問題タブ [servicestack.redis]

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.

0 投票する
1 に答える
54 参照

servicestack - Redis Pub/Sub を複数の Web サイト/サービス間で動作させるための ServiceStack の最小構成

議論のために、私は3つのWebサービスホストを実行しており、そのうちの1つだけがハンドラーを登録しているとしましょう(これは、チャネル/トピックへのサブスクライブに相当すると思います)。

ここで私の質問は、「公開のみの場合、他のアプリ ホストを同じ方法で構築する必要がありますか?」です。例えば

ありがとう、スティーブン

0 投票する
1 に答える
1599 参照

multithreading - RedisResponseException: マルチリクエストで不明な応答

3 時間以上前に送信されたレビューを処理するために、Quartz ジョブを毎分実行する Windows サービスがあります。このアプリケーションは、最新の ServiceStack.Redis v3 ライブラリを使用して、別のマシン上の Redis 2.8.12 インスタンスとやり取りします。

新しいレビューが送信されると、新しいレビューの ID が Redis の並べ替えられたセットに保存され、スコアにNewReview.DateCreated.Ticksを使用しています。ジョブが実行されると、処理するレビューのリストを取得するために次のコードが実行されます。

通常、これは正常に機能し、並べ替えられたセットに 3 時間以上前のレビューがある場合、それらの ID が返され、ジョブはそれらを正常に処理します。ただし、まったく同じコードを使用すると、断続的に次の例外が発生します。

ServiceStack ソース コードをダウンロードしてステップインしようとしましたが、デバッグ中に問題が発生することはなく、それ以外の場合は再現できないようです。RedisClientManagerはシングルトンPooledRedisClientManagerであり、私が知る限り、クライアントを適切に作成および破棄しており、トランザクションまたはパイプラインも使用していません

私の理解では、Redis は実際にはシングルスレッドであるため、プールされたクライアント マネージャーはいくつかのトリッキーな接続共有を行っているということです。別の接続またはその他のスレッドまたは接続共有の問題から間違った結果を返している可能性があるように感じます。

これを引き起こしている可能性のあるアイデアはありますか?

0 投票する
3 に答える
36752 参照

c# - リスト要素を Redis キャッシュに保存する方法

私はStackExchange.RedisC#のredisキャッシュに使用しました。

しかし、次のようなデータを保存したい

1つのキーにすべての顧客リストが保存され、そのリスト内の顧客データも簡単に検索、グループ化、フィルタリングできます

ServiceStack.Redisまたはを使用して回答を歓迎しますStackExchange.Redis

0 投票する
1 に答える
2185 参照

azure - ServiceStack.Redis ライブラリを使用して Redis Cache サーバーに接続できません

次のコードをインストールPM> Install-Package ServiceStack.Redisして使用し、Azure Redis キャッシュに接続しました。

PRIMARY KEYあきらめていないので、接続文字列を逃したと思いますhost

取得エラー:

{"mydemo.redis.cache.windows.net:6379 で redis インスタンスに接続できませんでした"}

接続先が一定時間後に適切に応答しなかったために接続の試行が失敗したか、接続されたホストが応答しなかったために確立された接続が失敗しました 11.22.216.225:6379

0 投票する
2 に答える
1583 参照

c# - C#でサービススタックのredisリストをロックする方法

c#で、サービススタックのredisを使って、以下のURLをもとに、

https://github.com/ServiceStack/ServiceStack.Redis/wiki/RedisLocks

文字列エントリをロックするには、次のメソッドが使用されます。

上記の SetEntry コードは、文字列値を設定するために正常に機能します。しかし、同じコードを使用してリストをロックすると、Redis Exception がスローされます。

Acquirelock メソッドは正常に動作しますが、新しい値を using ステートメント内のリストにプッシュすると、次の例外がスローされます。

間違った種類の値を保持するキーに対する WRONGTYPE 操作、sPort: 50371、LastCommand: RPUSH 97:Q {}

これは単純なコンソール アプリケーションです。取得ロック メソッドがないと、値がリストに正常に追加されます。

c#でredisリストをロックするには?

0 投票する
2 に答える
606 参照

c# - Servicestack.Redis の「New Managed Pub/Sub Server」を使用してチャンネルから登録解除する方法

New Managed Pub/Sub Serverのドキュメントでは、pubsubserver の初期化でチャネルをサブスクライブする方法が示されています。しかし、プログラムの後半で必要になったときに、特定のチャンネルの登録を解除するにはどうすればよいでしょうか?

私のコード:

0 投票する
1 に答える
127 参照

servicestack - Servicestack がすべての Get Set コマンドをログに記録しないようにする

数日前に Servicestack をアップグレードして以来、ServiceStack.Redis.RedisNativeClient という名前のロガーですべての Redis リクエストのログを記録し始めました。

私のログをかなりいっぱいにしています。これを無効にする方法はありますか?サービススタックのアップグレードに関連していますか? または、うっかり構成設定を行ってしまったのでしょうか? (私は故意にRedisコードに近づいたことはありません)。また、Azure で新しいバージョンの Redis にアップグレードしましたが、これが原因でしょうか? (ありそうにない)

ありがとう。

0 投票する
1 に答える
1630 参照

redis - Redis HSCAN 複数一致

ここに私が持っているハッシュセットがあります

set フィールドは電話番号、SET 値は人の名前と考えることができます。

電話番号に「23」と「89」を含むすべてのレコードを取得する必要があります。

2 つのリクエストを実行して、サーバー上でそれらをマージすることが可能です。

1 つの式を使用して同じことを行うことはできますか? このような

0 投票する
1 に答える
14468 参照

c# - StackExchange.Redis と ServiceStack.Redis の違い

ServiceStack.RedisStackExchange.Redis c# ライブラリの違いを説明できる人はいますか?