0

Python WSGI アプリケーションのコードが変更された場合、apache2 のリロードまたはグレースフル リスタート機能を使用する必要がありますか?

現在、リロードを使用していますが、モジュールが長期間存在していても、アプリケーションが正しくロードされず、欠落しているモジュールに関するエラーがエラー ファイルに記録されることがあることに気付きました。

4

2 に答える 2

0

可能であれば、おそらく優雅に使用する必要があります。ただし、アプリケーションが正しく終了しない場合は、強制的に再起動する必要がある場合があります。

wsgi の場合は、デーモン モードで実行してみてください。デーモン モードで実行されている場合は、wsgi ファイルに触れてタイムスタンプを更新するだけで、サービスを再起動できます。これにより、Apache を再起動せずにすべてのコードがリロードされます。

詳細はこちら: http://code.google.com/p/modwsgi/wiki/ConfigurationDirectives#WSGIDaemonProcess

これは django 用ですが、プロジェクトに役立つ場合があります: http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango

于 2012-04-17T20:18:49.397 に答える
0

'reload' と 'graceful' は、Web アプリケーションをリロードする限り、同じ効果があります。説明したようなインポートで問題が発生している場合は、アプリケーション コードに問題があり、インポート順序の依存関係またはインポート サイクルがある可能性があります。これは、Django を使用している人々によく見られます。発生しているエラーの例を実際に投稿することをお勧めします。

于 2012-04-18T01:19:04.227 に答える