SQLAlchemyのすべてについて()クエリのパフォーマンスの問題

問題の説明:テーブルの量を増加させつつ、データベースのクエリデータが巨大であれば、我々はすべての()クエリを使用できない場合、あなたが考慮すべき最初の事は、すべてのデータ・プラクティスを照会し、パフォーマンスの問題では、データベース・サーバのメモリ消費の負担を増加します私たちが安らかなスタイルのlist_resourceインタフェースを持っている場合、このメソッドは、システムのクラッシュは、その後どのように我々はそれを行うことができ、特に避けることができない得るのだろうか?
ここに画像を挿入説明
アイデア:
私たちはlist_resourceインタフェースがそうであるように最初は、フィルタ条件を追加したり、制限を使用することが可能である()(オフセット)とデータ間隔の数を制限し、我々は先端示すタブを使用しようとする
ここに画像を挿入説明
私たちは、メソッドのpaginateを使用する際の時間をあなたはまだそれがパフォーマンスの欠如であるかどうかを心配していますか?すべてのデータが最初にしてそれを介してページングをチェックアウトするかどうか?ではないので、あなたはパフォーマンスの問題を持っていないように注意してください、あなたがソースコードの下に表示されているため、ソースコードが限度の使用があり、あなたを教え、それをオフセット
ここに画像を挿入説明
もSQLAlchemyのキャッシュの効果に加えて、同じ要求では、クエリと同じデータを複数回彼は唯一のクエリ一度、後者はローカルにキャッシュされたデータの使用になりますと、
もちろん、あなたは、あなたがRedisのは(ここでは詳細に議論されていない)キャッシュの層を構築し使用することができ、パフォーマンスが良いだけでは不十分だと思うかもしれません

また、改ページを表示するために、他のサードパーティのライブラリがありますが、唯一のクエリページ表示の結果の後に、以下に列挙しました

  1. paginate_sqlalchemy
    公式文書アドレスhttps://pypi.org/project/paginate_sqlalchemy/
  2. paginate(公式ドキュメントのアドレスを見つけましたが、PIPを使用してインストールし、輸入のpaginateを使用することができません)
    あなたが使用できる公式ドキュメントやソースコードの例の特定の使用を参照して、使用ピップにだけ必要がインストールすることができ、
リリース元の2件の記事 ウォンの賞賛0 ビュー50

おすすめ

転載: blog.csdn.net/weixin_45488755/article/details/104309837