-
Redisデータ構造
Redisを初めて使用する場合でも、利用可能な機能の復習が必要な場合でも、このガイドは、Redisが提供するすべてのデータ構造を理解するのに役立ちます。 適切な構造を選択 Redisのデータ構造は単純です。解決しようとしている問題に完全に一致するものはないでしょう。ただし、データに適切な初期構造を選択すると、Redisコマンドを使用して必要なものを効率的に取得することができます。多くのRedisコマンドには、使用する予定の基になるデータ構造のタイプを示すプレフィックスが付いています。 汎用データ構造 プレフィックス 用途 警告とよくある誤用 ハッシュ H オブジェクトストレージ
-
Lua:Redisユーザー向けガイド
Redisにはスクリプト言語が埋め込まれていると聞きましたが、まだitaを試していないのですか?これが、RedisサーバーでLuaのパワーを使用するために理解する必要があることのツアーです。 こんにちは、Lua! 最初のRedisLuaスクリプトは、意味のある方法で実際にRedisと対話することなく、値を返すだけです。 local msg = "Hello, world!" return msg これは簡単です。最初の行はourmessageを使用してローカル変数を設定し、2行目はその値をRedisサーバーからクライアントに返します。このファイルをhello.luaとし
-
GoでのRedisプロトコルの読み取りと書き込み
この投稿では、Redisprotocolがどのように機能し、何が優れているかを理解する方法として、GoでのRedisクライアントの2つのコンポーネントのシンプルでわかりやすい実装の概要を説明します。 Goでフル機能の本番環境に対応したRedisクライアントをお探しの場合は、GaryBurdのredigoライブラリをご覧になることをお勧めします。 始める前に 、Redisプロトコルの穏やかな紹介を必ずお読みください。このガイドで理解する必要のあるプロトコルの基本について説明しています。 GoのRESPコマンドライター 架空のRedisクライアントの場合、書き込む必要のあるオブジェクトは1種
-
Redisプロトコルのビギナーズガイド
Redisの最も優れた未発表の機能の1つは、ワイヤープロトコルです。これが、Redisが高品質のクライアントライブラリの最大のエコシステムの1つを持っている理由です。 Redisワイヤープロトコルは非常にシンプルであるため、Redisのすべての主要機能を実装するクライアントを簡単に構築できます。また、高速で効率的なクライアントライブラリを簡単に作成できるように設計されています。 RESPとは何ですか? RESP( RE dis S erialization P rotocol)は、RedisクライアントとサーバーがTCPを介して相互に通信するために使用するテキストベースのプロトコ
-
Redisレプリカにキーがありません
Redisで期限切れの(「揮発性」とも呼ばれる)キーを使用する場合、新しいRedisレプリカをデータベースにアタッチすると、驚くかもしれません。レプリカのキーカウントは、プライマリDBのキーカウントよりも大幅に少ない可能性があります。 。これは、揮発性キーが多数ある場合に特に一般的です。 Redisレプリカにキーがありませんか?データを失っただけですか?簡単な答えは「いいえ」です。ただし、データを失っていないのに、Redisレプリカがより少ないキー数を報告している理由を正確に理解することは役に立ちます。これには、Redisがキーを期限切れにする方法と、Redisがデータセットを新しいレプリカ
-
Redisで大きなハッシュを削除する
Redisで大きなオブジェクトの削除が遅い理由の詳細については、このクイック概要をお読みください Redisで大きなハッシュを削除するには: キーの名前を一意の名前空間付きキーに変更して、ハッシュが他のRedisクライアントにすぐに「削除」されたように見えるようにします。 ハッシュからフィールドが空になるまで段階的に削除します。削除コマンドのサイズを制限することで、サーバーを長時間ブロックしないようにします。 次のコードは、Redis接続の失敗を適切に処理しないことに注意してください。いずれかのRedisコマンドが失敗して例外が発生した場合は、手動でクリーンアップする必要
-
Redisで大きなリストを削除する
Redisで大きなオブジェクトの削除が遅い理由の詳細については、このクイック概要をお読みください Redisで大きなリストを削除するには: キーの名前を一意の名前空間付きキーに変更して、リストが他のRedisクライアントにすぐに「削除」されたように見えるようにします。 リストが空になるまで、リストから要素を少しずつ削除します。削除コマンドのサイズを制限することで、サーバーを長時間ブロックしないようにします。 次のコードは、Redis接続の失敗を適切に処理しないことに注意してください。いずれかのRedisコマンドが失敗して例外が発生した場合は、手動でクリーンアップする必要が
-
Redisでの大きなオブジェクトの削除
Redisでは、ハッシュ、リスト、セット、ソートされたセットなどの大きな非文字列オブジェクトを削除すると、サーバーがかなりの時間ブロックされ、クライアント側のタイムアウトなどの問題が発生する可能性があります。これは、Redisworksの方法の2つの側面によるものです。 Redisはシングルスレッドです。これは、接続しているクライアントの数に関係なく、一度に1つのコマンドしか処理できないことを意味します。コマンドの実行に時間がかかる場合は、他のすべてのコマンドを待機する必要があります。 DEL O(n)です ハッシュ、リスト、セット、およびソートされたセットに対する操作。つまり、1
-
Redisで大きなセットを削除する
Redisで大きなオブジェクトの削除が遅い理由の詳細については、このクイック概要をお読みください Redisで大きなセットを削除するには: キーの名前を一意の名前空間付きキーに変更して、セットが他のRedisクライアントにすぐに「削除」されたように見えるようにします。 セットからメンバーを少しずつ、空になるまで少しずつ削除します。削除コマンドのサイズを制限することで、サーバーを長時間ブロックしないようにします。 次のコードは、Redis接続の失敗を適切に処理しないことに注意してください。いずれかのRedisコマンドが失敗して例外が発生した場合は、手動でクリーンアップする必
-
Redisでの大きなソート済みセットの削除
Redisで大きなオブジェクトの削除が遅い理由の詳細については、このクイック概要をお読みください Redisでソートされた大きなセットを削除するには: ソートされたセットが他のRedisクライアントにすぐに「削除」されたように見えるように、キーの名前を一意の名前空間付きキーに変更します。 ソートされたセットから、空になるまで小さなバッチでメンバーを段階的に削除します。削除コマンドのサイズを制限することで、サーバーを長時間ブロックしないようにします。 次のコードは、Redis接続の失敗を適切に処理しないことに注意してください。いずれかのRedisコマンドが失敗して例外が発生
-
Redis Pub / Sub:イントロガイド
パブリッシュ/サブスクライブ(またはパブ/サブ )は、何十年にもわたって使用されてきたソフトウェアエンジニアリングのパターンですが、多くの場合、専用のメッセージングサーバーと専門知識が必要です。 Redis pub / subは、2.0リリース以降すべてのRedisサーバーの機能であるパブリッシュ/サブスクライブパターンの無駄のないシンプルな実装です。つまり、Redisがデプロイされている場所ならどこでも簡単に使用でき、Redisをデプロイすることで高速でシンプルなpub/subシステムをすばやく構築できます。 Redis pub / subがアプリに適しているかどうかを理解するには、まず
-
Redis Pub / Sub:ハウツーガイド
Redis pub / subに関する概要記事では、pub / subの目的について説明し、特にRedis pub / subの設計上の選択について説明します。次に、Redis pub / subの各主要概念をステップスルーして、Redis pub/subの使用方法について説明します。 / sub:noderedis node.jsクライアントを使用したチャネル、パブリッシュ、サブスクライブ、およびパターンマッチング。 チャンネルを理解する チャネル pub/subsystemで公開されたメッセージを分類するために使用される名前です。チャネルには、system-health:i-36a44b
-
ストリームを使用したRedisの時系列
Redisは、「データ構造サーバー」と見なされることが多く、いくつかの単純なデータ構造プリミティブにネットワークインターフェイスを提供します。ストリームは、Redisが何年も前にソートされたセットを導入して以来、最初の主要な新しい汎用データ構造です。この新しい構造の主な用途の1つである時系列データのモデリングを見てみましょう。 ストリーム:新しいRedisデータ構造 Redis Streamsは、キーと値のペアの追加のみの時系列を表します。 任意の数のクライアントがストリームに書き込むことができ、書き込むたびに、時系列に挿入されたアイテムの一意の昇順IDを受け取ります。 データを読み取る
-
Redis ZRANGEBYSCORE –スコア範囲と昇順でソートされたセットの要素を取得する方法
このチュートリアルでは、特定の範囲の間でスコアの昇順でスコアを持つ並べ替えられた設定値のすべての要素を取得する方法について学習します。このために、redis ZRANGEBYSCOREを使用します コマンド。 ZRANGEBYSCOREコマンド このコマンドは、スコアが min以上であるソートされた設定値のすべての要素を返します。 (包括的)スコアで、最大以下 (包括的)スコアが引数として渡されました。ここでは、要素はスコアの昇順で返され、スコアが等しい要素の場合は、辞書式順序の昇順で配置されます。 デフォルトでは分 および最大 引数は閉区間(包括的) ただし、それらをオープン間隔とし
-
Redis ZREVRANGEBYSCORE –スコア範囲と説明順にソートされたセットの要素を取得する方法
このチュートリアルでは、特定の範囲の間でスコアの降順でスコアを持つ並べ替えられた設定値のすべての要素を取得する方法について学習します。このために、redis ZREVRANGEBYSCOREを使用します コマンド。 ZREVRANGEBYSCOREコマンド このコマンドは、スコアが max以下のソートされた設定値のすべての要素を返します。 (包括的)スコアおよび分以上 (包括的)スコアが引数として渡されました。ここでは、要素はスコアの降順で返され、スコアが等しい要素の場合は、辞書式順序の降順で配置されます。 デフォルトでは、最大 および分 引数は閉区間(包括的) ただし、それらをオープ
-
Redis Jedis –jedisライブラリを使用してリスト値に対してCRUD操作を実行する方法
このチュートリアルでは、Jedisライブラリを使用してリスト値に対してCRUD操作を実行する方法について学習します。 ジェダイライブラリ Jedisは、redisデータストア用のJavaクライアントライブラリです。小さくて非常に使いやすく、redis 2.8.x、3.x.x以降のデータストアと完全に互換性があります。 jedisライブラリの詳細についてはこちらをご覧ください。 リスト値 リストは、挿入順序でソートされた文字列のシーケンスです。 Redisでは、リストを値として保存でき、さまざまなredisコマンドを使用して、redisデータベースに保存されているリスト値を保存、管理、お
-
Redis Jedis –jedisライブラリを使用して設定値に対してCRUD操作を実行する方法
このチュートリアルでは、Jedisライブラリを使用して設定値に対してCRUD操作を実行する方法について学習します。 ジェダイライブラリ Jedisは、redisデータストア用のJavaクライアントライブラリです。小さくて非常に使いやすく、redis 2.8.x、3.x.x以降のデータストアと完全に互換性があります。 jedisライブラリの詳細についてはこちらをご覧ください。 設定値 Setは、一意の要素の順序付けられていないコレクションです。Redisでは、セットを値として保存でき、さまざまなredisコマンドを使用して、redisデータベースに保存されているセット値を保存、管理、およ
-
Redis Jedis –jedisライブラリを使用してハッシュ値に対してCRUD操作を実行する方法
このチュートリアルでは、Jedisライブラリを使用してハッシュ値に対してCRUD操作を実行する方法について学習します。 ジェダイライブラリ Jedisは、redisデータストア用のJavaクライアントライブラリです。小さくて非常に使いやすく、redis 2.8.x、3.x.x以降のデータストアと完全に互換性があります。 jedisライブラリの詳細についてはこちらをご覧ください。 ハッシュ値 ハッシュはフィールドと値のペアのマップであり、Javaオブジェクトのようなオブジェクトタイプを表すために使用できます。 Redisでは、ハッシュを値として保存でき、さまざまなredisコマンドを使用
-
Redis Jedis –jedisライブラリを使用して地理的価値に対してCRUD操作を実行する方法
このチュートリアルでは、Jedisライブラリを使用してgeo値に対してCRUD操作を実行する方法について学習します。 ジェダイライブラリ Jedisは、redisデータストア用のJavaクライアントライブラリです。小さくて非常に使いやすく、redis 2.8.x、3.x.x以降のデータストアと完全に互換性があります。 jedisライブラリの詳細についてはこちらをご覧ください。 ジオバリュー 地理空間値には、地球上の特定の場所の経度と緯度の座標が含まれます。Redisでは、地理空間要素をキーに保存された並べ替えられた設定値に保存でき、さまざまなredisコマンドを使用して、redisデー
-
Redis Jedis –jedisライブラリを使用してキーに対してCRUD操作を実行する方法
このチュートリアルでは、Jedisライブラリを使用してキーに対してCRUD操作を実行する方法について学習します。 ジェダイライブラリ Jedisは、redisデータストア用のJavaクライアントライブラリです。小さくて非常に使いやすく、redis 2.8.x、3.x.x以降のデータストアと完全に互換性があります。 jedisライブラリの詳細についてはこちらをご覧ください。 キー Redisでは、キーはデータストアに保存されている値を保存、管理、取得するための一意の識別子として使用されます。キーコマンドの詳細については、こちらをご覧ください。 プロジェクトの設定 お気に入りのIDEで