Остановка|перезагрузка сервера под Linux

Здесь Вы можете задать вопросы по использованию программы.
Ответить
Аватара пользователя
Yaroslav
Сообщения: 846
Зарегистрирован: 03:45, 15.12.2007
Контактная информация:

Остановка|перезагрузка сервера под Linux

Сообщение Yaroslav »

Помогите прояснить вопрос перезапуска сервера Linux, Wine.

Если убить процесс, не важно как
kill -9 pid
или
killall CommFort_server.exe
или даже через меню выход

порт переходит в состояние TIME_WAIT и так находится минуту. Из-за этого перезапуск длится целую минуту с небольшим.

На венде такого не было, я знаю точно, потому, что у меня был скрипт перезапуска службы для настроек сервер, который отрабатывал очень быстро. Там было что-то вроде:

service commfort stop
start c:/path/to/server.exe /wait
service commfort start

было удобно, т.к. сервер работал службой. Я запускал скрипт, служба останавливалась, тот час же запускалась графическая оболочка, можно было делать все необходимые настройки, затем выходить через меню и сразу же сружба стартовала снова.

На линуксе такой прикол не проходит. Пришлось снабдить скрипт проверкой порта и ожиданием, пока порт не освободится.

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

Ну и вопрос: можно ли как-то этого избежать? может нужно как-то по-особенному его завершать?
Web-интерфейс серверных логов ——> http://commfort.com/ru/forum/viewtopic.php?t=6618
Web-статистика посещаемости чата —> http://commfort.com/ru/forum/viewtopic.php?t=6546
Благодарности —> R753244967524 Z664725275810 U806184306803 ЯД:41001743355185
kamatozzz
Сообщения: 736
Зарегистрирован: 18:58, 21.03.2007
Откуда: Crimea
Контактная информация:

Re: Остановка|перезагрузка сервера под Linux

Сообщение kamatozzz »

На FreeBSD этот процесс еще дольше:)
Где-то я по этому поводу отписывал, но не смог найти.
На бсд заметил, что если убьешь процесс через top, то время ожидания не большее, а порой вообще нету. А если закроешь сервер правой кнопкой по иконке "закрыть", то время ожидание большее, 3-5 минут. (это на FreeBSD)

На Ubuntu все получше, но тоже такая проблема присутствовала.

Решения нету.
Жилье в Алуште - http://alushta.us/
kamatozzz
Сообщения: 736
Зарегистрирован: 18:58, 21.03.2007
Откуда: Crimea
Контактная информация:

Re: Остановка|перезагрузка сервера под Linux

Сообщение kamatozzz »

Maxim Mirgorodsky писал(а):Такое сообщение выводится когда порт используется. Видимо, это особенность работы среды. Но в ситуации разберемся и исправим если будет возможность.
Тут.
Жилье в Алуште - http://alushta.us/
Аватара пользователя
Yaroslav
Сообщения: 846
Зарегистрирован: 03:45, 15.12.2007
Контактная информация:

Re: Остановка|перезагрузка сервера под Linux

Сообщение Yaroslav »

Ну тут разбираться нечего. Я уже встречался с проблемой TIME_WAIT, но в другом вопросе. Это очень доставляло... (кстати тоже на никсах, даже кажется на бубунте)

А касательно данной ситуации:
• Почему разное время ожидания: потому, что разные настройки жизни пакета, а TIME_WAIT ставится на удвоенное время жизни (это объясняется по ссылке, которую я приводил).
• Как исправить: делать не закрытие соединения, а сброс (тоже объясняется в статье). Однако совет сомнительный, как по мне.

Единственное, что мне не понятно, так это факт, почему на венде такого не случалось. В то, что венда работает лучше с сетемыми службами, я никогда не поверю, хоть ты меня стреляй :)
Web-интерфейс серверных логов ——> http://commfort.com/ru/forum/viewtopic.php?t=6618
Web-статистика посещаемости чата —> http://commfort.com/ru/forum/viewtopic.php?t=6546
Благодарности —> R753244967524 Z664725275810 U806184306803 ЯД:41001743355185
Ответить