1

こんにちは、ボトルサーバーを正常にシャットダウンする方法があります。ある意味では、最終的に停止する前に、いくつかの手順を実行できるはずです。これは、再起動中の破損状態を回避するために、スレッドやdb状態などをクリーンアップするために重要です。

ボトルサーバーを実行するためにmodwsgiapacheモジュールを使用しています。

4

1 に答える 1

2

mod_wsgiでは、atexitコールバックを登録でき、通常のプロセスシャットダウン時に呼び出されます。しかし、あなたは何かをするのにそれほど長くはありません。組み込みモード、またはデーモンモードとApacheの再起動によるシャットダウンの場合、Apacheはその後プロセスを強制的に強制終了するため、3秒しかありません。デーモンモードとトリガーがWSGIスクリプトファイルへのアクセスによるものである場合、またはデーモンプロセスにシグナルを明示的に送信した場合は、5秒かかります。これは、mod_wsgiが時間がかかりすぎると判断し、強制的に強制終了するときです。

Pythonの「atexit」モジュールを参照してください。

于 2012-02-22T06:09:33.643 に答える