私は今週末に初めてのdjangoアプリケーションをサーバーにデプロイしました。私はPostgreSQL、PostGIS、virtualenvなどをインストールしなければならなかったので、それは明確なVPSサーバーでした。アプリケーションを作成するには時間がかかります。サーバからログアウトしたときにAJAXリクエストがgunicornで正常に動作しない
django開発サーバーでは問題なく動作しますが、VPSサーバー上でAJAXリクエストが正常に動作しない場合は、gunicorn(Nginxと協力)でアプリケーションをデプロイしました。私は3つのAJAXリクエストを直ちに送信します。そして、1つまたは2つの要求だけが値を返しました。だから私はgeventと、このスレッド(Django AJAX requests during regular request not going through)を発見し、このコマンドを実行しますgunicorn:
gunicorn myapp:wsgi:application --bind 0.0.0.0:9000 -k gevent --worker-connections 1001 --workers=3
、それが動作します。すべてのリクエストが値を返し、すべてがOKです。だから私はプロセスをバックグラウンドに入れ、サーバからログアウトします。
しかし、私がサーバーからログアウトするたびに、リクエストは停止します。この行動は、ジーヴェルを持たない最初のものと同じです。仮想環境を有効にしたり、設定したりするときの問題か、これはサーバとしてのUbuntuの標準的な動作ですか?
私はどこに解決策を見つけるべきかわからないので、私はどんな助けも喜んでいます。
どのようにプロセスをバックグラウンドに配置しますか?私はあなたが必要に応じてガンコーンを実行して再起動するスーパーバイザーを使用することをお勧めします。 –
いいえ、私はCTRL + Zを押してbgと書いています。私がdahrensの答えからどのように見えるかはおそらく悪いですか?サーバーとアプリケーションはまだ動作していますが、要求が正しく機能していません。だから私は悪い背景を置くことでの問題を期待していなかった。 – Bulva
これは、geventが監視者(またはそのようなもの)によって監視されなければならないことがわかっていて、アプリがまだ動作しているが要求がそうでない理由です。 – Bulva