точно 90 секунд для перезапуска апачского httpd

Существует не вне готового решения. Но можно сделать следующее:

  1. Доберитесь data_length и index_length для таблиц пользователь владеет с show table status (Это - сумма пространства использование файлов данных в файловой системе),
  2. Подведите итог этих чисел для всех баз данных
  3. Если предел достигнут, удалите, например, ВСТАВЛЯЮТ полномочия для того пользователя, таким образом, он не может больше вставлять новые данные.

Но имейте в виду, что, удаляя данные из InnoDB таблицы не освободят пространство в файловой системе. Таким образом, если Ваш пользователь достиг предела, он ничего не может сделать против него. (Кроме дампа всех таблиц InnoDB, отбрасывая их и повторно импортируют их),

2
задан 11 February 2014 в 12:26
3 ответа

После долгих проб и ошибок я обнаружил, что это вызвано php5 модуль, который загружается в / etc / sysconfig / apache2 . Его удаление полностью остановило это поведение.

Мне нужен модуль php5 ,

0
ответ дан 3 December 2019 в 15:14

То же самое происходило и со мной, и оказалось, что я оставил файл / etc / hosts по умолчанию.

Задержка исчезла сразу после того, как я обновил файл hosts, аналогично на это:

127.0.0.1   localhost
::1         localhost
172.16.333.444  www.mysite.com mysite.com

Ссылки:

/ etc / hosts запись для одного IP-сервера, обслуживающего несколько доменов

https://unix.stackexchange.com/questions/57439/slow-start-of-midnight-commander# answer-397879

0
ответ дан 3 December 2019 в 15:14

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

В обычном случае использования недолговечных соединений http/https это не является проблемой при корректном завершении работы или перезагрузке... обычно это должно занять секунду. Проблема в том, что у вас есть что-то, что задерживает выход детей, например, постоянные соединения websocket. В этом случае серверу никогда не удастся изящно остановиться/перезагрузиться... он просто будет сидеть там вечно в полумертвом состоянии.

Вы можете настроить задержку с помощью директивы GracefulShutdownTimeout:

https://httpd.apache.org/docs/2.4/mod/mpm_common.html#gracefulshutdowntimeout

По умолчанию она имеет значение 0 (бесконечно). 5 секунд – более разумное значение.

Обратите внимание, что при использовании systemctl для перезапуска сервера, по умолчанию он будет ждать максимум 90 секунд, прежде чем заставить его убить дочерние процессы (а не навсегда), поэтому вы видите эту 90-секундную задержку. Это значение задано в /etc/systemd/system.conf:

#DefaultTimeoutStopSec=90s

Это также можно изменить для отдельных устройств с помощью параметра TimeoutStopSec.

1
ответ дан 17 July 2021 в 18:54

Теги

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