sql >> データベース >  >> NoSQL >> Redis

Redisキーへのアクセスをブロックする(ServiceStack)

    Redisは非ブロッキング非同期サーバーであり、キーまでクライアント接続でブロックするためのredisに組み込まれたセマンティクスはありません。 無料です。

    注:RedisはリモートのNoSQLデータストアであるため、redisに関連して実装するロックは、設計上「分散」されています。 ServiceStackのAcquireLockは、redisのプリミティブ SETNXを使用します ロックセマンティクスにより、1つのクライアント接続のみがロックされ、他のすべてのクライアント/接続は、指数バックオフ乗数を使用してポーリングによってロックが解除されるまでブロックされたままになります。

    ポーリングせずに分散ロックを実装するには、SETNX+redisのPub/Subサポートの組み合わせを使用して、待機中のクライアントにロックが解放されたことを通知するソリューションを作成する必要があります。



    1. mongoスクリプトでのファイル書き込み操作?

    2. Mongodb C#ドライバーは、配列内の一致するサブドキュメントのみを返します

    3. ClusterControl1.4のMongoDB機能

    4. SQLで文字列を連結する方法