做熱部署平行(allAtATime)我們嘗試過這種POC通過AWS碼20臺Live服務器,其背後負載平衡器部署部署代碼。我們正在讓nginx運行在Hiphop之前。我們嘗試了熱部署,即在nginx運行時進行部署。嘻哈錯誤日誌被陷在通過AWS Codedeploy
只要部署過程將新文件移動到生產服務器中的指定位置,我們就開始收到以下錯誤,該錯誤在一些服務器上無限期地繼續,並且在輪詢50分鐘後Jenkins作業超時 -
\nFatal error: syntax error, unexpected $end in /path/to/file.php on line 19477
看起來好像只有文件的一部分被加載和讀取,即使文件的整體沒有語法錯誤。這樣的服務器上
重啓nginx的手動解決了這個問題,但似乎並沒有得到很好的解決。
我們正在試圖找出背後這個問題的原因。
HHVM版本使用 - 街舞VM 3.12.0-dev的(相對)
Nginx的版本 - 1.8.0
替代做法
我們現在正在做冷部署(關閉nginx然後執行部署,然後再次打開nginx),但這也是拋出自己的問題。我不會在這裏公佈這些細節,但這個想法是採取大量我們的服務器的優勢,並且在僅落後LB服務器的一小部分在同一時間都nginx的關閉這樣做冷部署,這樣它就不會在正在運行的服務器上造成太多的負載。