![当您在服务器运行时更新 PHP 时会发生什么?](https://linux22.com/image/652812/%E5%BD%93%E6%82%A8%E5%9C%A8%E6%9C%8D%E5%8A%A1%E5%99%A8%E8%BF%90%E8%A1%8C%E6%97%B6%E6%9B%B4%E2%80%8B%E2%80%8B%E6%96%B0%20PHP%20%E6%97%B6%E4%BC%9A%E5%8F%91%E7%94%9F%E4%BB%80%E4%B9%88%EF%BC%9F.png)
我通过 FCGI 使用 Apache 和 PHP-FPM 提供文件服务。
当我yum update
在实时服务器上运行时,PHP 更新后会发生什么?
我可以想象三种情况:
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。