0

mysql バックエンドで遅いクエリを診断しようとしていて、Django フロントエンドを使用している場合、バックエンドによって報告された遅いクエリを Django フロントエンド コードの特定のクエリセットとどのように結び付けますか?

4

2 に答える 2

1

django-devserverをインストールすると、実行中のクエリと、runserver の使用時にシェルでかかる時間が表示されます。

別の代替手段はdjango-debug-toolbarで、サイトのサイド パネル オーバーレイで同じことを行います。

いずれにしても、開発環境でテストする必要があります。ただし、どちらも、問題のあるクエリを直接特定するという問題を実際に解決するものではありません。リクエストごとに機能します。その結果、どのビューがデータベースを最も頻繁に使用しているか、および/または非常に大量のデータを処理しているかについて少し考える必要がありますが、可能性の高い候補ビューを厳選し、これらのページでクエリを実行すると、どの特定のクエリが最悪であるかを把握できるはずです。

于 2012-02-06T22:25:55.453 に答える
1

疑わしいクエリセットのすべてのdjangoクエリをログに記録する以外に、代替手段はないと思います。

特定のクエリセットの実際のクエリにアクセスする方法については、この回答を参照してください。

于 2012-02-06T21:14:33.523 に答える