現在のプロジェクトをJedisからLettuceに移植しています。レタス:反応性APIの共有接続
リアクティブAPIには共有接続を使用してもよろしいですか? BLPOPやMULTI/EXECなどのブロックやトランザクション操作を呼び出さない限り、
リアクティブAPIによるトランザクションでプール接続を使用する必要がありますか?
リアクティブAPIを介してコマンドをパイプライン処理することはできますか?それ専用の接続を使うべきですか?
現在のプロジェクトをJedisからLettuceに移植しています。レタス:反応性APIの共有接続
リアクティブAPIには共有接続を使用してもよろしいですか? BLPOPやMULTI/EXECなどのブロックやトランザクション操作を呼び出さない限り、
リアクティブAPIによるトランザクションでプール接続を使用する必要がありますか?
リアクティブAPIを介してコマンドをパイプライン処理することはできますか?それ専用の接続を使うべきですか?
複数のスレッド間で1つの接続を共有するのが目的です。複数の理由があります。
パイプライニングについて:レタスは、レタスがデフォルトでパイプライニングを使用することを意味するレディスに後続のコマンドを送る前に、コマンド完了を待たない。パイプライン化を防止する唯一の方法は、コマンド呼び出し時の外部同期です。
各コマンドは、TCP接続に直接フラッシュされます。レタスはバッチ処理を使用してコマンドをグループ化してから接続にフラッシングすることができます。コマンドのフラッシュは手動のものであり、バルクロード用であり、反応的な使用のためではありません。
は、さらに2つのものがあります。これはレタス5.0で、最初のベータ版がすでに利用可能です。
HTH、
マーク