検索

ホームページ  >  に質問  >  本文

谈一谈Redis的incr命令

incr命令自动加一是只相对于这台机器而言还是相对于整个redis集群?
比如我一开始只有1台机器。有一个参数是count,这台机器的count达到了10000。
然后我增加了一台redis机器。
很显然,我的初衷是我再来取count的时候是从10000开始的。也就是说,整个变量对整个redis集群而言是唯一的。
此外,redis的主从同步大概要花多长时间?(就是立即同步那种,数据只存在内存中间)

大家讲道理大家讲道理2798日前666

全員に返信(2)返信します

  • ringa_lee

    ringa_lee2017-04-22 09:02:09

    マスター/スレーブ関係がある場合、データの一貫性を維持するにはクラスター内のマシンが必要です。
    マシン A 上の変数 a に対して 10000 への incr 操作を実行すると、そのマシンがクラスター内のマスターであり、他のマシンがそのマシンのスレーブである場合を除き、他のマシンは値を更新しません。独自の値を 10000 に更新します;
    マシンを追加する場合も同様です。追加されたマシンが自分のマシンのスレーブである場合、a の値が更新されます。 10000からスタートします。

    返事
    0
  • 黄舟

    黄舟2017-04-22 09:02:09

    Redis クラスターの実装と構成を見たことがありますか? Redis 独自のクラスター実装は、たとえば ABC の 3 台のマシンで、A に「A_KEY」というキーがある場合、クラスターを操作して設定すると、どのマシン (ABC) で実行してもキーを取得できます。 A: "A_KEY" なので、質問の答えは問題ありません。

    ただし、マシンの追加については、ユーザーとしてすべてを正しく行っているという前提に基づいています。マシンを追加するには、以前に ABC3 マシンに割り当てられていた重みを ABCD4 マシンに変更する必要があります。何らかの操作対象となるもの。

    返事
    0
  • キャンセル返事