实际上,您真正的问题是在生产环境中这样做.我的意思是,您必须尽可能减少停机时间,并在出现问题时计划恢复(回滚)程序.
通常,我并不真正关心存储库的“官方”,而是“声誉”.我不习惯认为“非官方”的公共开源repos将恶意软件注入软件包(安全问题),我认为如果它们很受欢迎并且被广泛使用,它们的维护得很好(可靠性问题).
如果你真的担心使用非官方的repo,你有一个更难的选择:从源代码编译,然后在官方repo更新时覆盖PHP.这带来了风险.
这是我的策略.
首先,制作应用程序的可复制快照.收集文件,数据库条目以及在全新服务器上启动应用程序所需的任何内容(如果您想要与3进行负载均衡,但您并不是真的想要).这将是您的回滚过程.
其次,使用当前的PHP安装创建服务器快照.完整的系统映像是合适的.保持它作为一个黄金图像.您将备份您的应用程序以及服务器,但没关系.
第三,做源编译,可能先在staging中尝试.
第四,当您的官方仓库更新时,创建一个新的应用程序快照,恢复旧的黄金服务器映像,升级PHP,然后将应用程序升级到您刚刚执行的快照.
如果出现任何问题,你总是有:
>要还原的备份应用程序.我认为你不会每秒处理数千个事务,因此数据丢失可能很小甚至是空的>一个完整的服务器映像,万一事情真的非常糟糕