У меня на сайте люди открывают разные страницы, просматривают и редактируют их.
Каждое действие отслеживается на сервере через веб-сокеты.
Я для этого написал небольшое приложение на nodejs, примерно такое:
let modifyingPages = 0;
let browsingPages = 0;
let creatingPages = 0;
ws.on('message', json => {
const msg = JSON.parse(json);
if (msg.type === 'startModifyPage') {
this.modifyingPages++;
} else if (msg.type === 'finishModifyPage') {
this.modifyingPages--;
} else if (msg.type === 'startBrowsePage') {
this.browsingPages ++-;
} else if (msg.type === 'finishBrowsePage') {
this.browsingPages --;
} else if (msg.type === 'startCreatePage') {
this.creatingPages ++;
} else if (msg.type === 'finishCreatePage') {
this.creatingPages --;
}
});
В общем когда пользователь совершает какое-то действие, оно записывается в счетчик, а этот счетчик выводится на всеобщее обозрение. Некая статистика в реальном времени.
Проблема в том, что когда я модифицирую этот файл, мне его нужно перезапустить, а перезапуская, счётчик обнуляется.
Как в таких случаях поступают?