Google App Engine のユーザー インターフェースの [インスタンス] で、[シャットダウン] ボタンを押すと、選択したインスタンスをシャットダウンできます。ソースコードからプログラムでシャットダウンできますか?
2 に答える
アプリケーション全体を(アプリケーション設定ページから)しばらくの間無効にしてから再度有効にすることができます(または、その時点から削除できます)。
特定のインスタンスを「シャットダウン」する方法はありません。アプリケーションの異なるバージョンを使用できますが、アプリケーションのアクティブ バージョンとして使用できるインスタンスは常に 1 つだけです。ただし、異なるバージョン間でトラフィックを分割することはできますが、アクティブなバージョンは変更されません。
パフォーマンスに関しては、Max Idle Instances の値を 1 に変更して、1 つのインスタンスのみがプリロードまたはアクティブになるようにすることができます。
実際、コード内でインスタンスを強制的にシャットダウンすることはできますが、それはきれいではありません。インスタンスが持っているよりも多くのメモリを割り当てるだけで、シャットダウンされます。
起動中の DeadlineExceeded が不完全なインポートで問題を引き起こす可能性があるいくつかの python2.5 M/S アプリでこの手法を使用しました。次に処理されたリクエストがインスタンスがトーストであることを知っている場所で ImportError を返した場合、ユーザーをサイトにリダイレクトし、メモリを使い果たす非常に大きな文字列を作成し、そのインスタンスをシャットダウンします。
理論的には、同様のことを行うことができます。