この記事では、Redis に関する関連知識を提供します。主に、Redis インスタンスの追加、マスター ノードとしての 8007 の構成、8007 としての 8008 の構成など、クラスター操作に関連する問題が整理されています。ノードなどについて説明しますので、皆様のお役に立てれば幸いです。
推奨される学習: Redis ビデオ チュートリアル
既存の基盤に基づいて、ここでは 3 つの主要な機能の基本バージョンを示します。 3 つ目から、アーキテクチャは次のとおりです
1. クラスターを開始します ##/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8001/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8002/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8003/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8004/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8005/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8006/redis.conf
クラスター ステータスの表示: クラスター ノード
上の図からわかるように、クラスター全体は 3 つのマスター ノードで正常に実行されています。および 3 つのスレーブ ノード、
- ポート 8001 のインスタンス ノードには、ハッシュ スロット 0 ~ 5460 が格納されます。
- ポートのインスタンス ノード8002 はハッシュ スロット 5461 ~ 10922、
- ポート 8003 のインスタンス ノードにこれらのハッシュ スロット 10923 ~ 16383、
を保存します。 3 つのマスター ノードには、すべてのハッシュ スロットが格納されます。 Redis クラスターを構成するストレージ スロット。スレーブ ポイントは、各マスター ノードのバックアップ スレーブ ノードです。ストレージ スロットは表示されません。
2. クラスターの操作
元のクラスターをベースに、マスター (8007) とスレーブ (8008) を 1 つずつ追加します。ノード クラスターについては次の図を参照してください。新しいノードは点線のボックスで表されます
2.1. redis インスタンス
## /usr/local/redis-cluster の下に 8007 および 8008 フォルダーを作成し、8001 フォルダーの下にある redis.conf ファイルを 8007 および 8008 フォルダーにコピーします次へmkdir 8007 8008
cd 8001
cp redis.conf /usr/local/redis‐cluster/8007/
cp redis.conf /usr/local/redis‐cluster/8008/
# 修改8007文件夹下的redis.conf配置文件
vim /usr/local/redis‐cluster/8007/redis.conf
# 修改如下内容:
port:8007
dir /usr/local/redis‐cluster/8007/
cluster‐config‐file nodes‐8007.conf
# 修改8008文件夹下的redis.conf配置文件
vim /usr/local/redis‐cluster/8008/redis.conf
# 修改内容如下:
port:8008
dir /usr/local/redis‐cluster/8008/
cluster‐config‐file nodes‐8008.conf
# 启动8007和8008俩个服务并查看服务状态
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8007/redis.conf
/usr/local/redis‐5.0.3/src/redis‐server /usr/local/redis‐cluster/8008/redis.conf
ps ‐el | grep redis
2.2. 8007 をマスター ノードとして設定#add-node コマンドを使用して新しいマスター ノードを追加します8007 (マスター)、前の ip:port は新しいノードであり、後の ip:port は既知の既存のノードです。ログの最後に「[OK] 新しいノードが正しく追加されました」というプロンプトが表示される場合は、それを意味します。新しいノードが正常に追加されたことを確認します
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster add‐node 192.168.0.61:8007 192.168.0.61:8001#クラスターのステータスを表示します##
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐c ‐h 192.168.0.61 ‐p 8001 192.168.0.61:8001> cluster nodes# は次のとおりです:
#注: ノードが正常に追加されると、新しく追加されたノードには何も割り当てられていないため、データがありません。スロット (ハッシュ スロット)。新しいノードに手動でハッシュを割り当てる必要があります。スロット
redis-cli コマンドを使用して、8007 にハッシュ スロットを割り当てます。クラスター内のマスター ノードを見つけて再シャードします
#2.3. 8008 を 8007/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster reshard 192.168.0.61:8001
のスレーブ ノードとして構成します#スレーブ ノード 8008 をクラスターに追加し、クラスターのステータスを確認します
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster add‐node 192.168.0.61:8008 192.168.0.61:8001
は次のとおりです:
#図に示すように、まだマスター ノードであり、ハッシュ スロットは割り当てられていません。
理由: 現在のノード (スレーブ ノード) のマスター ノード ID を指定するには、replicate コマンドを実行する必要があります。まず、新しいノードのクライアントに接続する必要があります。 8008 ノードを追加し、クラスター コマンドを使用して現在の 8008 (スレーブ) ノードを操作し、マスター ノードに割り当てます (ここでは前に作成した 8007 マスター ノードを使用します)
コマンドを実行します
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐c ‐h 192.168.0.61 ‐p 8008 192.168.0.61:8008> cluster replicate 2728a594a0498e98e4b83a537e19f9a0a3790f38 #后面这串id为8007的节点id
クラスターのステータスを確認します。ノード 8008 はノード 8007 のスレーブ ノードとして正常に追加されました。
2.4、删除8080从节点[不删除四主四从]
用del-node删除从节点8008,指定删除节点ip和端口,以及节点id(红色为8008节点id)
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster del‐node 192.168.0.61:8008 a1cfe35722d151cf70585cee212755653 93c0956再次查看集群状态,如下图所示,8008这个slave节点已经移除,并且该节点的redis服务也已被停止
2.5、删除8007主节点[不删除四主四从]
因为主节点的里面是有分配了hash槽的,所以我们这里必须先把8007里的hash槽放入到其他的可用主节点中去,然后再进行移除节点操作,不然会出现数据丢失问题(目前只能把master的数据迁移到一个节点上,暂时做不了平均分配功能),执行命令如下:
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster reshard 192.168.0.61:8007迁移验证:会发现8007下面已经没有任何hash槽了,证明迁移成功!
用del-node命令删除8007主节点即可
/usr/local/redis‐5.0.3/src/redis‐cli ‐a user ‐‐cluster del‐node 192.168.0.61:8007 2728a594a0498e98e4b83a537e19f9a0a 3790f38查看最终集群状态,发现一切恢复如初,至此水平扩展结束
推荐学习:Redis视频教程
以上がRedisクラスタの運用例を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

redisactsassassadatastoreandaservice.1)asadatastore、itusesin memorystorage for fastorations、supporting variousdatastructureSlike-key-valuepairsandsortedsets.2)asaservice、iteasruascruascriptingrupting criptingforceptingpurplecomplecomplecprexoperations

他のデータベースと比較して、Redisには次の独自の利点があります。1)非常に速い速度、および読み取り操作は通常、マイクロ秒レベルにあります。 2)豊富なデータ構造と操作をサポートします。 3)キャッシュ、カウンター、公開サブスクリプションなどの柔軟な使用シナリオ。 Redisまたはその他のデータベースを選択する場合、特定のニーズとシナリオに依存します。 Redisは、高性能および低遅延のアプリケーションでうまく機能します。

Redisは、データストレージと管理において重要な役割を果たしており、複数のデータ構造と持続性メカニズムを通じて最新のアプリケーションの中核となっています。 1)Redisは、文字列、リスト、コレクション、注文されたコレクション、ハッシュテーブルなどのデータ構造をサポートし、キャッシュや複雑なビジネスロジックに適しています。 2)RDBとAOFの2つの持続方法を通じて、Redisは信頼できるストレージとデータの迅速な回復を保証します。

Redisは、大規模なデータの効率的なストレージとアクセスに適したNOSQLデータベースです。 1.Redisは、複数のデータ構造をサポートするオープンソースメモリデータ構造ストレージシステムです。 2.キャッシュ、セッション管理などに適した、非常に速い読み取り速度と書き込み速度を提供します。 4.使用例には、基本的なキー値ペア操作と高度なコレクション重複排除関数が含まれます。 5.一般的なエラーには、接続の問題、データ型の不一致、メモリオーバーフローが含まれるため、デバッグに注意する必要があります。 6.パフォーマンス最適化の提案には、適切なデータ構造の選択とメモリ排除戦略の設定が含まれます。

現実世界でのRedisのアプリケーションには、1。キャッシュシステムとして、データベースクエリを加速し、2。Webアプリケーションのセッションデータを保存するには、3。リアルタイムランキングを実装する4。メッセージ配信をメッセージキューとして簡素化する。 Redisの汎用性と高性能により、これらのシナリオで輝きます。

Redisは、高速、汎用性、豊富なデータ構造のために際立っています。 1)Redisは、文字列、リスト、コレクション、ハッシュなどのデータ構造をサポートし、コレクションを注文します。 2)メモリを介してデータを保存し、RDBとAOFの持続性をサポートします。 3)Redis 6.0から始めて、マルチスレッドI/O操作が導入されました。これにより、高い並行性シナリオでパフォーマンスが向上しました。

redisisclassifiedsaNosqldatabasebasesakey-valuedataModelinsteaded ofthetraditionaldatabasemodel.itoffersspeedand andffficability、makingidealforreal-timeaplications andcaching、butmaynotbesbesutable fors cenariois requiring datientiantientioniity

Redisは、データをキャッシュし、分散ロックとデータの持続性を実装することにより、アプリケーションのパフォーマンスとスケーラビリティを向上させます。 1)キャッシュデータ:Redisを使用して頻繁にアクセスしたデータをキャッシュして、データアクセス速度を向上させます。 2)分散ロック:Redisを使用して分散ロックを実装して、分散環境での操作のセキュリティを確保します。 3)データの持続性:データの損失を防ぐために、RDBおよびAOFメカニズムを介してデータセキュリティを確保します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

SublimeText3 中国語版
中国語版、とても使いやすい

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 Linux 新バージョン
SublimeText3 Linux 最新バージョン

WebStorm Mac版
便利なJavaScript開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。
