問題タブ [redisclient]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python-3.x - ネットワーク ケーブルを切断し、ReDiS クラスターのマスターをそのクラスターの ReDiS スレーブから分割した場合、マスターの数が 2 倍になったらどうすればよいですか?
より具体的には、私がネットワーク ケーブルにつまずいて、ReDiS クラスターのマスターをそのクラスターの ReDiS スレーブから分割したとしましょう。マスターの数が 2 倍になった場合、クライアントが分割前の「最初の」マスターにのみ書き込むようにすることはできますか?
たとえば、次のプロパティを持つクラスターがあり、サブネット 192.168. 53 .* および 192.168. 105 .* 最終的に 6 人のマスターが必要ですか?
192.168 の ReDiS 1。53.1 :7000 (マスター)
192.168 の ReDiS 2。53.1 :7001 (マスター)
192.168 の ReDiS 3。53.1 :7002 (マスター)
192.168 の ReDiS 4。105.2 :7000 (スレーブ)
192.168 の ReDiS 5。105.2 :7001 (スレーブ)
192.168 の ReDiS 6。105.2 :7002 (スレーブ)
私は、ReDiS 4、ReDiS 5、および ReDiS 6 がすぐにマスターになり、最終的には次のようになると推測しています。
192.168 の ReDiS 1。53.1 :7000 (マスター)
192.168 の ReDiS 2。53.1 :7001 (マスター)
192.168 の ReDiS 3。53.1 :7002 (マスター) =======
//Snapped Cable//========
ReDiS 4 on 192.168. 105.2 :7000 (マスター)
ReDiS 5 on 192.168. 105.2 :7001 (マスター)
ReDiS 6 on 192.168. 105.2 :7002 (マスター)
また、断線したケーブルを交換すると、またこうなってしまいますよね?
192.168 の ReDiS 1。53.1 :7000 (マスター)
192.168 の ReDiS 2。53.1 :7001 (マスター)
192.168 の ReDiS 3。53.1 :7002 (マスター)
192.168 の ReDiS 4。105.2 :7000 (スレーブ)
192.168 の ReDiS 5。105.2 :7001 (スレーブ)
192.168 の ReDiS 6。105.2 :7002 (スレーブ)
マスターが「あるべき」ものであることを認識するようにクライアントに書き込み、192.168.1 のマスターにのみ書き込むようにするのは賢明ですか。53 .*?
このシナリオの問題を軽減する例として、次の変数を、のメンバーによって表される ReDiS の 1 つがfirstThreeMasters
スレーブになったときにのみ更新するようにできますか?
(私のクライアント コードの動作がこの質問の主題ですが、これは serverfault.com に属していると思いますか?コメントでアドバイスするか、移動することをお勧めします。)
c# - Servicestack RedisClient が破棄された後も接続を維持する
クラスの redisclient に servicestack を使用しています。次のようなredisクライアントが1つあります。
以下は、使用後に適切に破棄されるようにするための使用方法です。
私の質問はclient
、同じ Disposed を使用して redis に別のリクエストを行うと破棄した後、破棄client
されたクライアントは redis データベースへの別の接続を成功させますが、今回は接続が CLIENT LIST に残ります。
javascript - redis クライアントとノード js - hgetall メソッドが空の結果で失敗する
これは、私にとって redis cilent とノード js の初日です。
node.js の redis-cli を介して実行するこのコマンドを複製しようとしています。
nodejs コードは次のとおりです。
null が返され、foreach を実行しようとして失敗します。
私も試しました:
しかし、私は同じ結果を得ます。
私が間違っているのかわかりません。
編集1
私はこのコードを試しました:
結果は次のとおりです。
それでも、CLIでこれを行うことができます:
c++ - EVAL コマンドで Lua スクリプトを使用するための RedisClient
nekipelov/redisclientを使用して Redis にアクセスしています。パフォーマンスを向上させるために、Redis への 1 回の呼び出しで複数のハッシュ データを取得する必要があります。
より具体的には、以下のように複数のハッシュを取得しようとしています:
script.lua:
しかし、nekipelov/redisclient から EVAL コマンドを使用して上記を表現するのは困難です。
私は以下のことを試しました:
しかし、明らかに間違っています。