Что произойдет, если вы обновите PHP во время работы сервера?

Что произойдет, если вы обновите PHP во время работы сервера?

Я обслуживаю файлы с помощью Apache и PHP-FPM через FCGI.

Что происходит при обновлении PHP на работающем yum updateсервере?

Я могу представить три сценария:

  • php-fpmостанавливается, а затем перезапускается после обновления пакета
  • php-fpmпродолжает использовать предыдущую версию PHP до ее перезапуска
  • php-fpmпродолжает работать и переключает версии PHP «на лету», возможно, даже во время выполнения скрипта (например, запуск скрипта со старой версией и включение новой версии)

Что из этого отражает то, что происходит на самом деле?

решение1

Насколько я могу судить по файлу .spec, php-fpm будет перезапущен, то есть все запущенные процессы будут остановлены. Смотритеhttps://github.com/remicollet/remirepo/blob/master/php/php56/php56.spec

решение2

Чтобы быть более предсказуемым, я настоятельно рекомендую не запускать yum update на работающем сервере. Вместо этого вам следует создать страницу обслуживания, не связанную с PHP, и обслуживать ее, пока вы обновляете PHP, а затем вернуться к своему PHP-приложению, как только вы закончите, и перезапустить php-fpm.

Связанный контент