私はDjango + MySQLのいくつかのサーバを持っています。それはすべて正常に動作しますが、私はアジアでサーバーをセットアップするときに非常に奇妙な問題に直面しました。基本的には、少し遅れても、migrate --list
またはshell
は正常に動作します。しかし、DBを広範囲に使用するページを読み込もうとすると、私は502になり、uWSGIワーカーは死にます。 nGinxのタイムアウト値を増やした後、リクエスト後40秒間の読み込みが開始されました。この40秒間、ブラウザはちょうどconnecting to ...
で立ち往生しています。約40秒後に、ページはうまくレンダリングされ、プロセスは非常にうまくいくはずです。リモートMySQLを使用したDjango
これは、クエリとは別に、データ転送が含まれているため、これは遅れている可能性があります。しかし、データベースホストにpingを実行すると、遅延はほとんどありません。 MySQLの接続を調べると、アジアのサーバー接続が40秒間スリープ状態になり、追加の接続がどこにも表示されず、ページが読み込まれます。
Serverの構成はまったく同じです。私はそれが本当にデータベースの場所か、私はconfigsを変更する必要があるのだろうかと思っています。
しかし、私がrunserver
を実行したときの効果は同じです。だから、nGinxやuWSGIの設定方法に何か問題があるとは思わない。