Redis Clustering Redis は、一般的なインメモリ データ ストア である のデータを管理するための分散型でスケーラブルなアプローチです。 クラスタリングにより、複数の Redis ノードが統合システムとして連携できるようになり、可用性が向上し、耐障害性が高まり、大規模なデータセットを処理するパフォーマンスが向上します。
では Redis Clustering 、データは複数のノードに分割され、各ノードはデータの一部のみを保持します。 このパーティショニングにより水平方向のスケーリングが可能になり、クラスターに新しいノードを追加して増大するデータ要件に対応できます。 さらに、 Redis Clustering 組み込みのレプリケーションを提供し、ノード障害時のデータ冗長性とフェイルオーバー機能を保証します。
の主な機能は Redis Clustering 次のとおりです。
-
高可用性: Redis Clustering 一部のノードに障害が発生した場合でも、データ レプリケーションと自動フェイルオーバー メカニズムにより、システム全体が動作し続けることが保証されます。
-
水平スケーリング: データ サイズが増加するにつれて、新しいノードをクラスターに追加して、データ負荷を分散し、パフォーマンスを向上させることができます。
-
データ シャーディング: データはシャードに分割され、各シャードが特定のノードに割り当てられるため、効率的なデータの分散と取得が可能になります。
-
クラスター管理: Sentinel とクラスター マネージャーを Redis Clustering 組み合わせて使用して、ノードの状態を監視し、フェイルオーバー タスクを実行します。 Redis
-
整合性: Redis データへの変更が徐々にクラスター全体に伝播される、最終的な整合性を提供します。
Redis Clustering で 使用するには NodeJS 、次の手順に従います。
インストール Redis
Redis まず、サーバーに インストールする必要があります。 公式 Web サイトからダウンロードするか、 apt
や などのパッケージ マネージャーを使用できます brew
。
Cấu hình Redis cho クラスタリング
クラスタリング用の構成 Redis: Redis 構成ファイル(redis.conf) を開き、次の変更を加えます。
# Enable clustering mode
cluster-enabled yes
cluster-config-file nodes.conf
cluster-node-timeout 5000
cluster-enabled
クラスタリング モードを有効にするには、 に 設定します yes
。 cluster-config-file
クラスターの状態を保存するファイルの名前を指定します。 cluster-node-timeout
クラスターノードのタイムアウトをミリ秒単位で定義します。
Redis インスタンス の開始
異なるポートで複数の Redis インスタンスを起動し、クラスターを形成します Redis。 各インスタンスは同じ構成ファイルを使用する必要があります。
Redis Cluster の NodeJS
アプリケーションでは NodeJS、 「ioredis」などのクラスタリング Redis をサポートするクライアント ライブラリを使用します Redis。 クライアントは自動的にクラスターの状態を処理し、リクエストを適切なノードにルーティングします。
Redis Cluster に「ioredis」を使用し て接続する例 NodeJS:
const Redis = require('ioredis');
const redis = new Redis.Cluster([
{ host: '127.0.0.1', port: 7000 },
{ host: '127.0.0.1', port: 7001 },
{ host: '127.0.0.1', port: 7002 },
// Add more Redis nodes if needed
]);
IP アドレスとポートをクラスター ノードのアドレスに置き換えます Redis。
テスト Redis Clustering
クラスターがセットアップされ、アプリケーションがクラスターに接続されたら、 通常どおりコマンドの NodeJS 使用を開始できます。 Redis クライアント Redis は、クラスター ノード間のデータ分散とフェイルオーバーを自動的に処理します。
これらの手順に従うことで、アプリケーション Redis Clustering で利用し NodeJS て水平方向に拡張し、大量のデータを簡単に処理できるようになります。