デーモンとして実行されている Python スクリプトがあります。起動時に 5 つのプロセスが生成され、それぞれが Postgres データベースに接続します。現在、DB 接続の数 (最終的には非常に大きくなります) を減らすために、単一の接続を複数のプロセスで共有する方法を見つけようとしています。そして、この目的のために私はmultiprocessing.sharedctypes.Value
APIを見ています。psycopg2.connection
ただし、この API を使用してプロセス間でオブジェクトを渡す方法がわかりません。誰がそれがどのように行われるのか教えてもらえますか?
この問題を解決するために、私は他のアイデアにもオープンです。
接続をコンストラクタの一部として 5 つのプロセスに渡すことを考慮しなかった理由は、相互排除の処理です。このアプローチに従った場合、複数のプロセスが接続にアクセスするのを防ぐ方法がわかりません。これが正しいことかどうか誰かに教えてもらえますか?