![我是否應該期望 Google App Engine 會隨機重新啟動執行個體?](https://rvso.com/image/726836/%E6%88%91%E6%98%AF%E5%90%A6%E6%87%89%E8%A9%B2%E6%9C%9F%E6%9C%9B%20Google%20App%20Engine%20%E6%9C%83%E9%9A%A8%E6%A9%9F%E9%87%8D%E6%96%B0%E5%95%9F%E5%8B%95%E5%9F%B7%E8%A1%8C%E5%80%8B%E9%AB%94%EF%BC%9F.png)
我昨天在 australia-southeast1 區域運行了該應用程式的一個實例(真為我感到羞恥)。
昨晚是該應用程式的關鍵時刻;人們依賴它完美地工作,然後在活動進行到一半時,實例就消失了。大約8分鐘後,一個新實例建立完成並繼續提供流量。
這是我該期待的嗎?實例隨機消失並重新啟動?我意識到我應該運行幾個版本,但是如果兩個版本同時重新啟動怎麼辦?
應用程式(標準的簡單 Rails 應用程式)重新啟動時,日誌不會顯示任何錯誤。日誌只有 8 分鐘的間隙,然後 Puma 在新實例中啟動。
CPU 使用率保持恆定,很少超過 5% 左右。記憶體使用量約為 840MB,重啟前略有峰值,為 880MB。 「磁碟位元組」恆定為約 15KB/秒,在重新啟動時出現 40MB/秒的大幅峰值。
應用程式.yaml
entrypoint: bundle exec rackup -p $PORT
env: flex
runtime: ruby
handlers:
- url: .*
script: main.app
secure: always
automatic_scaling:
min_num_instances: 1
max_num_instances: 4
cpu_utilization:
target_utilization: 0.75
答案1
答案2
與我類似的問題;新的健康檢查不檢查申請,只有 VM 和 Docker(除非你設定它們來檢查你的應用程序,而我沒有),所以很明顯問題出在應用程式引擎本身。
編輯:不確定為什麼否定,但為了更清楚地說明這一點。
是的,您應該期望它們會隨機重新啟動實例。您看到的行為不是由您的應用程式引起的。