如果您有一个新模块,则需要运行 setup:upgrade
那么我看不到可以使停机时间为零的方法。因为您需要升级数据库,所以它通常会降低10到20秒。还是我错过了什么?
即使您要部署到另一个文件夹,然后在生成所有文件时,也将实时环境符号链接到该文件夹,您仍然必须照顾数据库。
如果您有一个新模块,则需要运行 setup:upgrade
那么我看不到可以使停机时间为零的方法。因为您需要升级数据库,所以它通常会降低10到20秒。还是我错过了什么?
即使您要部署到另一个文件夹,然后在生成所有文件时,也将实时环境符号链接到该文件夹,您仍然必须照顾数据库。
Answers:
我想知道您在什么环境下工作需要10到20秒,甚至几分钟的停机时间,这将是一个大问题。自然,这并不理想,但是我必须想象这是一个很小的代价,特别是如果您在非高峰时间部署。
M2开发人员文档:将Magento部署到生产中。在撰写本文时,文档是稀疏的,并且链接到外部GitHub问题进行讨论。但是,这些官方文档是一个值得关注的好地方。
我的团队正在研究使用Capistrano部署M2。我们尚未确定最终的流程,但是简单的Google搜索(“ capistrano magento 2”)显示许多人正在尝试相同的方法。
最后,还有各种方案,例如蓝绿色部署,它们也试图最大程度地减少停机时间。特别是蓝绿色就像拥有一个过渡服务器,但是在关键时刻,您将DNS更新为从蓝色指向绿色,从而使绿色变为活动状态,而蓝色变为“过渡”。对于下一次部署,蓝色将再次变为活动状态。从理论上讲,这种停机时间为零,并且更改随着DNS更改的传播而迅速发生。