OPSのための[02]のRedis:ニュースのサブスクリプションとトランザクション管理

EDITORIAL言葉

 

いくつかの簡単なインストールと操作Redisの5つの基本的なデータ型についての話では、この章では、それは一般的ではないかもしれないが、Redisのいくつかの追加機能を見ることが主であるが、それでも知っておく必要があります。運用・保守人員の面で私たちのために、多分私達は、長年にわたって仕事に使用されていない、のようなこれらの事の知識を展開していますが、運用・保守の発展の方向に向かって徐々に開発する必要がある場合、これらの事はあなたの問題解決になります別のプログラム。もう一つのアイデア。

 

 

パブリッシュおよびサブスクライブ

 

Redisのは、2つの方法、メッセージキュー、パブリッシュおよびサブスクライブがあることを発表しました。

メッセージキューの場合は、自分の役割が含まれています:プロデューサー - >メッセージキュー - >消費者

生産者は、消費者は、キューから読み続け、その後、タスクを実行し、タスクがキューに処理されると言います。利点は、カップリング溶液は、簡単にスケーリングすることです。

我々はFMを放送することができるようパブリケーション・サブスクリプションについては、我々は唯一のチャンネルを持っている、あなたは、このプロセスに同調し、ラジオを聴くことができ、サブスクリプション・チャネルです。

そして、同様の放送の原理は、加入者が指定したチャンネルに最初のオープンチャンネルに必要な、その後発表された別のウィンドウを起動します。

fm110 SUBSCRIBE

結果が示されています。

 

この時点で、別のウィンドウには、fm110チャネルのニュースリリースを開始しました:

fm110 PUBLISH " こんにちは"

結果が示されています。

 

この時点で、加入者のウィンドウビュー:

 

それは少しQQグループチャットのようなものだ、唯一のメイングループを可能に話し、他が受信する複数の人かもしれません。

購読解除は、あなたがチャンネルを指定しない場合、すべてのチャンネルがキャンセルされます、チャネルを指定したサブスクリプション
UNSUBSCRIBE [チャンネル...] 

、それはそれと一致するよう、*印のように、与えられたパターンに一致する1つまたは複数のチャネルにサブスクライブ*チャンネル(it.news、it.blogなど)の先頭
PSUBSCRIBEパターン[パターン...] 

何のパラメータはすべてのルールから退会しません場合は、指定されたルールを解除
PUNSUBSCRIBE [パターン[パターン...]] 

見ます状態配信システムに登録 
PubSubのサブコマンド[引数[引数...] ]

もちろん、Redisのは、パブリッシュ・サブスクライブのメッセージ・キューは、あなたが本当にそのようなコンテンツが必要な場合は、あなたがRabbitMQの、カフカなどを選択することができ、実際には非常に粗いです。

 

 

トランザクション処理

 

あなたがコミットしていない場合は、ブラシがディスクに書き込まれる変更されませんが、MySQLではトランザクションを開始知って、Redisの中にそのような操作もあります。

MySQLではトランザクションはRedisのマルチを使用して、トランザクションを開始するか、起動を開始します。

ロールバックをキャンセルし、ロールバック、Redisの利用廃棄を使用することができますキャンセルMySQLでは、ロールバック、運用・保守のRedisが実行されていない呼び出すことはありません。

MySQLではコミットファイリング、Redisのは、execに使用されています。

Redisのは楽観的ロックで使用されている、あなたは、オンラインでシミュレートすることにより、テストにチケットを購入することができます:

ウィンドウ内の1つの実行:

127.0.0.1:6379>セットチケット1 
OK
 127.0.0.1:6379> 時計チケット
OK
 127.0.0.1:6379> マルチ
OK
 127.0.0.1:6379> セットチケット0 
QUEUED

 

一時的にそれを実行して、実行するために、ウィンドウ2を取っ:

127.0.0.1:6379> チケット取得
 " 1 " 
127.0.0.1:6379> マルチ
OK
 127.0.0.1:6379> セットチケット0 
QUEUED
 127.0.0.1:6379> execの 
1を)OK

 

この時点で、1を実行するためのウィンドウに移動します。

127.0.0.1:6379> EXEC 
(ゼロ)

そして、私はチケットが他の人に買収された発見しました!どの役割モニター(またはそれ以上)を見ているキー、この(またはこれらの)場合は、別のトランザクションの実行前にキーコマンドを変更され、トランザクションが中断されます。

 

 

その他のグローバルオペレーション

 

次のように一般的に使用されるコマンドは次のとおりです。

表示接続されたクライアント
CLIENT LISTの

キルクライアント 
クライアントKILL上記IDの上に10 、すべてのシステム構成取得 
CONFIGのGETを* マッチング構成入手 
CONFIGのGETログを* オンラインの構成変更CONFIG HelloWorldのrequirepass SET ログインのHelloWorld AUTH #が変更されますがredis.conf設定書込みCONFIG REWRITE #の表示現在のライブラリキー番号DBSIZEの#のRedisのを印刷するコマンドを受信MONITORの#をすべてのキー現在のライブラリを削除するにはFLUSHDBのすべてのライブラリに削除キーflushAll 現在の時刻の時間#のマニュアルが持続SAVE 非同期実行をAOF(AppendOnlyファイル)ファイル上書き操作

































BGREWRITEAOF 

ディスクに保存した背景非同期データで、現在のデータベース 
BGSAVE

結果は以下の通りであります:

127.0.0.1:6379> クライアントリストの
ID = 5 ADDR = 127.0.0.1:48567 FD = 8名=年齢= 15091アイドル= 0フラグ= N DB = 0サブ= 0 PSUB = 0マルチ= -1 qbuf = 0 qbuf-フリー= 32768 OBL = 0 OLL = 0 OMEM = 0イベント= R CMD = クライアント
ID = 8 ADDR = 127.0.0.1:48573 FD = 9名=年齢= 660アイドル= 600のフラグ= N DB = 0サブ= 0 PSUB = 0マルチ= -1 qbuf = 0 qbuf無= 0 OBL = 0 OLL = 0 OMEM = 0イベント= R CMD = EXEC 
ID = 10 ADDR = 127.0.0.1:48577 FD = 10名=年齢= 14アイドル= 14のフラグ= N DB = 0サブ= 0 PSUB = 0マルチ= -1 qbuf = 0 qbuf無= 0 OBL = 0 OLL = 0 OMEM = 0イベント= R CMD = キー
 127.0.0.1:6379>クライアントKILL番号10 
(整数) 1 
127.0.0.1:6379> CONFIG GETログ* 
1)" ログファイル" 
2)/data/services/redis/logs/redis-6379.log " 
3)" ログレベル" 
4)" 通知" 
127.0.0.1:6379> CONFIG SET requirepassのHelloWorld 
OK
 127.0.0.1:6379>キー* 
(エラー)NOAUTH認証が必要。
 127.0.0.1:6379> HelloWorldのAUTH 
OK
 127.0.0.1:6379> CONFIG GET requirepass
 1)" requirepass " 
2)" HelloWorldの" 
127.0.0.1:6379> CONFIG REWRITE 
OK
 127.0.0.1:6379> DBSIZE 
(整数) 1 
127.0 .0.1:6379>FLUSHDB
OK
127.0.0.1:6379> FLUSHALL 
OK
 127.0.0.1:6379> TIME
 1)" 1573022355 " 
2)" 256540 " 
127.0.0.1:6379> MONITOR 
OK
 1573022218.974627 [0 127.0.0.1:48573] " AUTH "  " HelloWorldの" 
1573022226.451991 [ 0 127.0.0.1:48573] " キー"  " * " 
1573022268.293698 [0 127.0.0.1:48573] " FLUSHDB " 
1573022292.090727 [0 127.0.0.1:48573] " FLUSHALL " 
1573022355。256531 [0 127.0.0.1:48573]" TIME "

これは、我々は実際には本当の意志多くはないと、次にくるものが、我々は物事の運用・保守の詳細を気にするもので、同程度の簡単なコマンドを学びました!それは設計およびチューニングのアーキテクチャです。

おすすめ

転載: www.cnblogs.com/Dy1an/p/11805098.html