私はPGに格納されたURLのリストを持つテーブルを持っています。私は、利用可能なURLのサブセットをとり、それらを処理するはずのアプリケーションを持っています。このアプリケーションは、一連のURLを取得するときに処理されたフィールド= trueを更新します。私は別のマシン上で複数のインスタンスを稼働させるつもりです。 PGへのアクセスを排他的にするにはどうすればよいのですか?別のマシンで同じURLを使用することはありませんか?PythonまたはPostgres経由でPostgreSQLテーブルへの排他的アクセス
0
A
答えて
2
あなたはPostgreSQLで、複数の方法で行をロックすることができますテーブルレベルロック、行レベルのロック、および諮問ロック。あなたのケースでは
http://www.postgresql.org/docs/9.0/static/explicit-locking.html
あなたが良い並行処理をしたい場合は、しかし、ロックが十分であることを行っていない:余分なprocessing
フィールドが異なる上で動作するように複数のジョブを持っていることを可能にする
update links
set processing = true
where id in (
select id
from links
where not processed
and not processing
limit 100
for update
)
returning *
行のセット。
2
この問題は、純粋にLOCK
ステートメントを使用してpostgresqlクエリで解決できます。ここでは例とドキュメントへのリンクは次のとおりです。
関連する問題
- 1. インターネット経由でローカルpostgresデータベースにアクセス
- 2. は排他的
- 3. ASP.net + C#.netの相互排他的アクセス
- 4. Python - オブジェクトの排他的な属性値?
- 5. WAN経由でSQL ServerのテーブルをWAN経由でアクセスするアクセスが遅い
- 6. いくつかのセッションエントリへの排他的アクセスを得るには?
- 7. Gdata API経由でのコメントへのアクセス
- 8. 排他的iOS UTI
- 9. Python/Javascript - 整数のビット単位の排他的または問題
- 10. Linuxのルートプログラムからttyデバイスへの排他的アクセスを取得する
- 11. java経由のコマンドプロンプト(ウィンドウ)へのアクセス
- 12. ストリーム経由のWCFサービスファイルへのアクセス
- 13. JavaScript経由のTCP接続へのアクセス
- 14. ODBC経由のDB2への無料アクセス
- 15. CakePHP - bootstrap.php経由のデータベースへのアクセス
- 16. Javascriptでの排他的な項目へのチェック
- 17. UITableはUITableViewCellで排他的です
- 18. Python経由でPostgresにタプルリストをインポートする
- 19. 他のテーブルの毎日のデータを使ったテーブルの更新Postgres/Python
- 20. jQueryセレクター:排他的OR
- 21. 相互排他的なチェックボックスロジック
- 22. PostgreSQLの排他ロックがアプリケーションを停止します
- 23. vba経由でグラフを作成するための2010へのクエリへのアクセス
- 24. AndroidアプリでオーディオH/Wに排他的にアクセスできますか?
- 25. CUDA gpudirectまたはGPDMA経由のGPUによるネットワークカードへのアクセス
- 26. LAN経由で他のマシンからバーチャルホストにアクセス
- 27. 相互に排他的なテーブル列を作成する方法
- 28. linux flock(2)を排他的な排他ロック要求から守るには?
- 29. AWS SDK経由でSQSへのアクセスが拒否されました
- 30. SQL排他または挿入時