良い一日!
uWSGI デプロイメントに移行しています。プロジェクトの半分は ZOPE3 で、ZODB と ZEO を使用して複数のアクセスを行います。次のように uwsgi デーモンを起動すると:
uwsgi_python27 --http :9090 --wsgi-file /path/to/file
すべて正常に動作します。シングルプロセスモードです。ブロックやロックはありません。このようにアプリを起動すると:
uwsgi_python27 --http :9090 --wsgi-file /path/to/file -p 3
すべてが実行されます。プリフォークモードです。良い結果が得られました。ただし、一部のリクエストはブロックされます。新しいインスタンスの起動時に、アプリが 1 つのリクエストをブロックしていると思われます。2〜3個のロックされたリクエストがあります。他のすべての作品は良好です。
しかし、私がこのように始めると:
uwsgi_python27 --http :9090 --wsgi-file /path/to/file --master
アプリは起動しますが、リクエストは処理されません。curl localhost:9090/some_page に行くと、何も読み込まれません。CPUなし、ディスク使用なし。ロックするだけです。
これにつながる可能性のある特定のZEOの動作を誰かが知っていますか? FileStorage だけを実行すると、デッドロックなしで正常に実行されます。uWSGI 動作のマスター モードに関する詳細もいただければ幸いです。