【发布时间】:2017-07-11 04:19:24
【问题描述】:
我们尝试使用此 POC 通过 AWS Code deploy 在负载均衡器后面的 20 台实时服务器上部署代码。我们在 Hiphop 前面运行 nginx。我们尝试了热部署,即在 nginx 运行时进行部署。
一旦部署过程将新文件移动到生产服务器中的指定位置,我们开始收到以下错误,在某些服务器上无限期持续,并且 Jenkins 作业在轮询 50 分钟后超时 -
\nFatal error: syntax error, unexpected $end in /path/to/file.php on line 19477
看起来只有文件的一部分被加载和读取,即使整个文件没有语法错误。
在此类服务器上手动重启 nginx 可以解决问题,但这似乎不是一个好的解决方案。
我们正试图找出这个问题背后的原因。
正在使用的 HHVM 版本 - HipHop VM 3.12.0-dev (rel)
Nginx 版本 - 1.8.0
替代方法
我们现在正在尝试进行冷部署(关闭 nginx,然后进行部署,然后再次打开 nginx),但这也引发了自己的问题。我不会在这里发布这些细节,但我们的想法是利用我们拥有的大量服务器,并以这样的方式进行冷部署,即一次只有一小部分 LB 后面的服务器关闭 nginx,以免对正在运行的服务器造成过多的负载。
【问题讨论】:
标签: nginx deployment aws-code-deploy hiphop