(因為rabbitmq是erlang語言編寫的,所以如果想在自己服務手動搭建rabbitmq環境,需要先安裝erlang的執行環境。這裡選擇了直接啟動乙個docker映象)
1.啟動rabbitmq的docker服務
docker run -itd --name rabbitmq -p 5672:5672 -p 15672:15672 rabbitmq:3-management
docker找不到映象會主動去pull,pull完成過後會主動執行
3. 進入容器內部
docker exec -it b815 bash
4. 新增使用者密碼及許可權設定
rabbitmqctl add_user lixiaoxuan 123456
建立完使用者後,還沒許可權訪問web ui,需要賦予許可權
rabbitmqctl set_user_tags lixiaoxuan administrator
rabbitmqctl set_permissions -p / lixiaoxuan ".*" ".*" ".*"
(具體的使用者角色跟許可權控制可參考文件
5. 登入rabbitmq管理ui 10.11.60.104:15672
exchange='user_action'sender.pyqueue='user_action_network_request_finished'
routing_key='network_request_finished'
#!/usr/bin/env pythonview code# coding=utf-8
import pika
#建立連線
connection = pika.blockingconnection(pika.connectionparameters('
localhost'))
#建立通道
channel =connection.channel()
#發布訊息
channel.basic_publish(exchange='
user_action
',routing_key='
network_request_finished
',body='
hello,world!')
print (
"sent 'hello world '")
#斷開連線
connection.close()
receive.py
#!/usr/bin/env pythonview code# coding=utf-8
import pika
#建立連線
connection = pika.blockingconnection(pika.connectionparameters('
localhost'))
#建立通道
channel =connection.channel()
#**函式
def callback(ch,method,properties,body):
print (
"[x] received %r
" %body)
#消費訊息
channel.basic_consume(queue='
user_action_network_request_finished
',auto_ack=true,on_message_callback=callback)
print(
'[*] waiting for messages. to exit press ctrl+c')
#開始消費訊息
channel.start_consuming()
參考
伺服器搭建 Linux安裝rabbitmq
安裝rabbitmq需要先安裝erlang 安裝erlang參考 我是安裝在 usr local soft 目錄下,首先切換到 usr local soft 目錄沒有soft資料夾的需要先建立資料夾 進入到rabbit檔案內,其命令檔案存在於sbin資料夾下,因此需要將sbin資料夾的路徑新增到pa...
RabbitMQ搭建流程
rabbitmq是最受歡迎的開源訊息中介軟體之一,在全球範圍內被廣泛應用。rabbitmq是輕量級且易於部署的,能支援多種訊息協議。rabbitmq可以部署在分布式系統中,以滿足大規模 高可用的要求。我們先來了解下rabbitmq中的相關概念,這裡以5種訊息模式中的路由模式為例 640.png 1 ...
RabbitMQ環境搭建
翻譯自 rabbitmq是乙個訊息佇列,用於接收並傳遞訊息。可以把它當作是乙個郵局,放入一封信件後信件最終會發到收信人,而rabbitmq扮演了郵局和郵差的角色。而rabbitmq和郵局的區別在於rabbitmq的訊息不是紙質訊息,接收 儲存和 的是二進位制資料 messages。在rabbitmq...