2017-06-09 8 views
0

Flaskでprocessesパラメータ(application.run(processes=10))を使用している場合、N個のタスクを処理した後に何らかの方法でプロセスを終了させることは可能ですか?N個のリクエストを処理した後、Flaskワーカープロセスを終了することはできますか?

基本的には、N個の要求に対してリソースを再利用し、現在のプロセスを強制終了し、フラスコを強制的に新しいプロセスに置き換えることによってN個の呼び出しの後に再作成したいとします。機能は、maxtasksperchildパラメータがNに等しいmultiprocessing.Poolを使用するのと同様です。

+0

が見えます。ですからまず、古いプロセスを再利用する方法を見つける必要があります。 – Eugen

答えて

1

N要求後の殺害プロセスが関係する状況では、Flask dev serverを使用しないでください。 Use a real WSGI server in productionには、これにはすべてオプションがあります。 gunicornと例えば

、:フラスコはリクエストごとに新しいプロセスを作成し、同じよう

gunicorn --max-requests=N --workers=10 myapp:app 
関連する問題