3

postgresql db バックエンドを使用して Django アプリで使用する db 接続プールの実装を調べていたところ、psycopg2 用に実装されたこのごく最近のラッパー パッケージに出くわしました -

https://pypi.python.org/pypi/django-db-pool

ここのドキュメントによると、psycopg2自体はさまざまなタイプのプール、つまりシンプル(単一スレッド間で共有)、スレッド(スレッド間で共有)、永続的(厳密にはスレッドごとに1つの永続化された接続)を提供します - http://initd.org/psycopg/ docs/pool.html .

ソースコードからわかるように、djang-db-pool はThreadedConnectionPool実装を使用しているようです。

現在、私の Django アプリの実装では、各リクエストが複数のスレッドから生成される可能性があります。これは、複数の同時 Django リクエストを処理することを意味しますがThreadedConnectionPool、正しい方法ですか?

このパッケージ (django-db-pool) または psycopg2 接続プールを Django で使用した経験があり、これに光を当てることができる人はいますか?

4

1 に答える 1

2

あなたがリンクしたドキュメントThreadedConnectionPoolは、Djangoがマルチスレッドアプリケーションに使用したいものです(または、Webサーバー/ WSGIインターフェイスの構成方法に応じて、とにかくそうすることができます)。私はdjango-dbを書きました-プールなので、私は公平な情報源ではありませんが、リクエストの流れを説明していただければ、追加のアドバイスを提供できますか?

于 2013-12-19T19:56:53.137 に答える