柚子快報激活碼778899分享:rabbitMQ基本介紹
柚子快報激活碼778899分享:rabbitMQ基本介紹
rabbitMQ 默認(rèn)端口 5672
mnesia 非關(guān)系型數(shù)據(jù)庫 存儲交換機(jī)隊列和綁定的元數(shù)據(jù)
啟動rabbitMQ服務(wù)
/sbin rabbitmq-server
/sbin rabbitmqctl stop
/sbin rabbitmqctl stop-app 只停止rabbitMQ應(yīng)用程序
默認(rèn)日志:/var/log/rabbitmq/
配置文件:/etc/rabbitmq/rabbitmq.config
交換機(jī)類型
direct 直連
fanout 扇形
topic 主體
exchange_declare 聲明交換機(jī)
queue_declare 聲明隊列
durable 隊列和交換機(jī)的屬性,是否持久化(默認(rèn)false) rabbit服務(wù)器宕機(jī)或者重啟后,隊列和交換機(jī)是否自動創(chuàng)建,只要設(shè)置為ture,這樣就能保證每次重啟rabbit服務(wù)器,隊列和交換機(jī)會自動創(chuàng)建
切記:隊列里的消息還是會丟失
服務(wù)器宕機(jī)消息能恢復(fù)的三個條件:
1 把他的投遞模式選項設(shè)置為2(持久 delivery mode)
2 發(fā)送到持久好的交換機(jī)
3 到達(dá)持久化的隊列
生產(chǎn)者的步驟:
1 連接到rabbitMQ $conn = new AMQPConnection(HOST,PORT,USER,PASS);
2 獲取信道 $channel = $conn->channel();
3 聲明交換機(jī) $channel->exchange_declare('logs-exchange','topic',false,true,false);
4 創(chuàng)建消息
5 發(fā)布消息
6 關(guān)閉信道
7 關(guān)閉連接
消費者的步驟:
1 鏈接到rabbitMQ $conn = new AMQPConnection(HOST,PORT,USER,PASS);
2 獲得信道 $channel = $conn->channel();
3 聲明交換機(jī) $channel->exchange_declare('logs-exchange','topic',false,true,false);
4 聲明隊列 $channel->queue_declare('msg-inbox-logs',false,true,false,false);
5 把隊列和交換機(jī)綁定 $channel->queue_bind('msg-inbox-logs','logs-exchange','error.msg-inbox');
6 消費消息
7 關(guān)閉信道
8 關(guān)閉連接
查看rabbitmq版本
./sbin/rabbitmqctl status | grep rabbit
./sbin/rabbitmqctl version
用戶管理
./sbin//rabbitmqctl add_user xiaopzi 123456
./sbin/rabbitmqctl delete_user xiaopzi
./sbin/rabbitmqctl list_users
./sbin/rabbitmqctl change_password xiaopzi 111111
權(quán)限系統(tǒng)
1.6.0版本開始,有了ACL風(fēng)格的權(quán)限系統(tǒng),之前只能對vhost進(jìn)行授權(quán)和訪問
讀:有關(guān)消費消息的任何操作,包括清除整個隊列(同樣需要綁定操作的成功)
寫:發(fā)布消息(同樣需要綁定操作的成功)
配置:隊列和交換機(jī)的創(chuàng)建和刪除
AMQP命令:
exchange_declare
exchange_delete
queue_declare
queue_delete
queue_bind
basic_publish
basic_get
basic_consume
queue_purge
謹(jǐn)記:訪問控制條目不能跨vhost,如果讓一個用戶對兩個vhost有相同的權(quán)限,必須創(chuàng)建兩份相同的訪問控制條目
./sbin/rabbitmqctl set_permissions -p vhost_name user_name ".*" ".*" ".*" (配置 寫 讀)
./sbin/rabbitmqctl cleaar_permissoins -p vhost_name user_name
./sbin/rabbitmqctl list_permissions -p vhost_name (不指定-p 默認(rèn)是 / vhost)
./sbin/rabbitmqctl list_user_permissions user_name (查看用戶的所有vhost的權(quán)限)
vhost
.sbin/rabbitmqctl add_vhost vhost_name
.sbin/rabbitmqctl list_vhosts
./sbin/rabbitmqctl delete_vhost vhost_name
列出隊列和消息數(shù)目
./sbin/rabbitmqctl list_queues
./sbin/rabbitmqctl list_queues -p vhost_name
./rabbitmqctl list_queues name durable auto_delete
./rabbitmqctl list_queues name messages consumers memory
查看交換機(jī)和綁定
./sbin/rabbitmqctl list_exchanges
./rabbitmqctl list_exchanges name type durable auto_delete
./sbin/rabbitmqctl list_bindings
日志
./sbin/rabbitmqctl rotate_logs .1 輪回日志
rabbitMQ高可用的兩種方法:
1 集群
2 warren 另一種集群方式
shovel rabbitmq服務(wù)器之間復(fù)制消息的插件
啟動(2.7.0開始):./sbin/rabbitmq-plugins enable amqp_client
配置:配置文件在rabbitmq.config文件中
柚子快報激活碼778899分享:rabbitMQ基本介紹
相關(guān)鏈接
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。