Redis 経由でデータを共有する必要がある 75 台の (そして増え続ける) サーバーがあります。理想的には、75 台のサーバーすべてが、操作を使用して Redis の 2 つのフィールドに書き込みたいと考えていますINCRBYFLOAT
。最終的には、これら 2 つのフィールドで毎日数百万回の書き込み操作と数十億回の読み取り操作が行われる可能性があると予想しています。このデータは永続的でなければなりません。
Redis のロックにより、書き込み操作が繰り返し再試行され、同じフィールドを多数同時にインクリメントしようとする可能性があることを懸念しています。
質問:
INCRBYFLOAT
非常に重い負荷の下で、単一のフィールドで複数の同時実行は悪い考えですか?- 外部プロセスで別々のフィールドを「要約」し、代わりに 2 つのフィールドを書き込む必要がありますか? (これにより、別の障害点が発生します)
- これら 2 つのフィールドの読み取りは、書き込み中にブロックされますか?