サーバーで 3 つの redis-server インスタンスを実行しています。インスタンスには異なる構成ファイルと db ファイルがあります。例: redis1 はデータベースの場所を /var/lib/redis_1 として設定し、redis2 はデータベースの場所を /var/lib/redis_2 として設定します。私はtemproxy構成を持っています:
アルファ: リッスン: 0.0.0.0:9999 レディス: 真 ハッシュ: fnv1a_64 配給:ケタマ auto_eject_hosts: 真 サーバー再試行タイムアウト: 2000 server_failure_limit: 2 サーバー: - 127.0.0.1:6381:1 - 127.0.0.1:6382:1 - 127.0.0.1:6383:1
3 つの redis インスタンスを起動し、データの「名前」を redis-cli で別々の値として設定しました。例: 最初のサーバーに「6381」、2 番目のサーバーに「6382」という名前を設定しました。db ファイル dump.rdb を開き、3 つのデータ値を確認してから、temproxy を開始しました。
temproxy を redis-cli に接続し、キー「name」を読み取ると、常に「6382」が返されます。別のクライアントを使用して接続しても、値は同じです。Redis インスタンスで値を直接変更するか、temproxy インスタンスに対して他の操作を行うと、変更が 2 番目の db ファイル /var/lib/redis_2/dump.rdb にのみ更新されることがわかりました。
temproxy が 3 つの redis-server インスタンスで機能しないのはなぜですか? 私の設定に何か問題がありますか?