169 похожих чатов

А что? Это ненормальная практика сохранять стейт генсервера при завершении

и загружать его при старте?

11 ответов

17 просмотров

Да, это ненормально

Lama Lover
Да, это ненормально

почему ненормально то

Евгений- Автор вопроса
Anastasiya Dyachenko
почему ненормально то

Проблема тут в том, что довольно часто не ты решаешь, когда процесс сдохнет. Процесс может упасть из-за бага, процесс может исчезнуть просто потому что среда, может закончиться память, может ещё что-то случиться То состояние, которое должно быть персистентным, должно моментально записываться на диск

Lama Lover
Проблема тут в том, что довольно часто не ты решае...

да на terminate не нужно полагаться, но почему бы не использовать если это может сработать в какой-то ситуации

Anastasiya Dyachenko
да на terminate не нужно полагаться, но почему бы ...

Не могу представить такую ситуацию Опять же, ты либо записываешь каждое изменение важного стейта на диск, либо нет Если ты записываешь каждое изменение важного стейта на диск, то terminate не нужен, потому что все важные изменения уже на диске

Lama Lover
Не могу представить такую ситуацию Опять же, ты ли...

например ты можешь сформировать стейт через долгий запрос с БД, но иногда этого можно избежать и достать с того же диска

Евгений- Автор вопроса
Lama Lover
Не могу представить такую ситуацию Опять же, ты ли...

У меня стейт не сильно важен. Просто если он не сохранится, то при следующем старте загрузится неактуальная версия, это будет задетекчено генсервером и старт слегка замедлится. В случае непредвиденного издыхания процесса такой холодный старт будет даже весьма кстати.

Евгений- Автор вопроса
Anastasiya Dyachenko
да на terminate не нужно полагаться, но почему бы ...

Насколько я понимаю terminate будет работать во всех штатных ситуациях. То есть почти всегда. Верно?

Евгений
Насколько я понимаю terminate будет работать во вс...

я бы так не сказала, при деплое например не факт

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта