Хранить состояния в памяти процесса - антипаттерн. Процессы ноды долгоиграющие но не бессмертные, потому и запускаются под супервайзером. Может всякое случится даже если у вас пуленепробиваемый код.
Егор Огурцов: Если там делов на пару строк - сделай сам. Если не можешь - будь готов платить. Притчу про Форда и $99 за ремонт при замене запчасти за $9 слышали?
kazmiruk: действительно, не обратил внимания. Ну, тем не менее надеюсь мой ответ подтолкнёт автора вопроса к использованию express. Вещь действительно замечательная.
Тимур Шемсединов: на практике, отключение по таймауту происходит например ночью, если на ресурс никто не заходит. Таймаут длинной в неделю в этом случае с запасом решает этот вопрос. А так, каждое обращение к sql-серверу этот таймаут и продлевает.
Тимур Шемсединов:
Во первых вы её не отсрочиваете. Таймаут срабатывает не через определённое время после установления соединения, а через определённое время отсутствия активности на соединении.
Во вторых, из моего ответа совершенно не следует, что не надо следить за разрывом соединения. Вы в своём ответе совершенно правильно всё написали.
Ну и в третьих, существует ещё один подход к обработке разрыва соединения - "let it fail". Когда вы намерено не обрабатываете исключение при разрыве что приводит к крешу процесса, который тут же поднимается супервизором. Тоже вполне себе рабочий подход при определённых ситуациях.
tuccar: ну, во-первых это оригинально и креативно. Во вторых вы будете иметь полное право смотреть на других разработчиков как на говно . В третьих, ваши исходники не будут кого-либо интересовать. Даже более того, никто не будет их воспринимать как исходники. Учитывая те цели которые вы ставите, это попадание 146%
Абсолютно верное решение. У нас так автоматизация производственных процессов и реализована. Клиенты — вебприложения в браузере. Фокус искусственно держится на поле ввода ожидающее кода. Закрывающим символ #13 (Еnter) сабмитит форму.
Пользователи FreeBSD описанных вами проблем могут не заметить. Там нода ставится из портов также как и остальной софт. Но про Linux вы правы. Сам был удивлён ситуацией, и это мягко сказано.
ps: а что мешает в ключевых местах цеха расставить «информкиоски» с тачскринами по типу платежных терминалов
Мы рассматривали вариант с терминалами, он имеет для нашей задачи минусы связанные с отсутствием его мобильности. Конкретно, мешает то что стеклопакеты могут находиться на разных стеллажах в разных концах территории. Стеклоносу необходимо иметь эту информацию на руках.