日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

RabbitMQ 入门系列(1)— Ubuntu 安装 RabbitMQ 及配置

發布時間:2023/11/28 生活经验 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RabbitMQ 入门系列(1)— Ubuntu 安装 RabbitMQ 及配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. RabbitMQ 簡介

消息 (Message) 是指在應用間傳送的數據。消息可以非常簡單,比如只包含文本字符串、JSON等,也可以很復雜,比如內嵌對象。

消息隊列中間件(Message Queue Middleware ,簡稱為 MQ)是指利用高效可靠的消息傳遞機制進行與平臺無關的數據交流,并基于數據通信來進行分布式系統的集成。通過提供消息傳遞和消息排隊模型,它可以在分布式環境下擴展進程間的通信。

消息隊列中間件,也可以稱為消息隊列或者消息中間件。它一般有兩種傳遞模式:點對點(P2P, Point-to-Point)模式和發布/訂閱(Pub/Sub)模式。

點對點模式是基于隊列的,消息生產者發送消息到隊列,消息消費者從隊列中接收消息,隊列的存在使得消息的異步傳輸成為可能。

發布訂閱模式定義了如何向一個內容節點發布和訂閱消息,這個內容節點稱為主題(topic),主題可以認為是消息傳遞的中介,消息發布者將消息發布到某個主題,而消息訂閱者則從主題中訂閱消息。主題使得消息的訂閱者與消息的發布者互相保持獨立,不需要進行接觸即可保證消息的傳遞,發布/訂閱模式在消息的一對多廣播時采用。

RabbitMQ 是基于 Erlang 語言,實現了 AMQP 協議實現的消息隊列中間件。

2. RabbitMQ 安裝

本文使用 Ubuntu16.04 安裝 RabbitMQ

2.1 安裝 erlang

由于 RabbitMQ 需要 erlang 語言的支持,所以在安裝 RabbitMQ 之前需要先安裝 erlang

sudo apt-get install -y erlang-nox

2.2 安裝 RabbitMQ

執行以下命令

sudo apt-get update
sudo apt-get install rabbitmq-server

RabbitMQ 會被安裝在 /usr/lib/rabbitmq

2.3 RabbitMQ 和 Erlang 版本對應關系

RabbitMQErlang 版本不匹配時會導致 RabbitMQ 環境異常,所以在安裝之前必須要注意兩者之間的匹配關系,具體可參考官方鏈接

RabbitMQ 和 Erlang 版本對應關系

2.4 使用 Docker 方式安裝

docker run -d --hostname my-rabbit --name rabbit -p 15672:15672 -p 5672:5672 rabbitmq

3. RabbitMQ 命令

  • 啟動 RabbitMQ
sudo rabbitmq-server start
  • 關閉 RabbitMQ
sudo rabbitmq-server stop
  • 重啟 RabbitMQ
sudo rabbitmq-server restart
  • 查看 RabbitMQ 狀態
sudo rabbitmqctl status

輸出結果如下:

~/software$ sudo rabbitmqctl status
Status of node rabbit@iZm5egn5zptnov4j3oxh4fZ ...
[{pid,19060},{running_applications,[{rabbit,"RabbitMQ","3.5.7"},{mnesia,"MNESIA  CXC 138 12","4.13.3"},{os_mon,"CPO  CXC 138 46","2.4"},{xmerl,"XML parser","1.3.10"},{sasl,"SASL  CXC 138 11","2.7"},{stdlib,"ERTS  CXC 138 10","2.8"},{kernel,"ERTS  CXC 138 10","4.2"}]},{os,{unix,linux}},{erlang_version,"Erlang/OTP 18 [erts-7.3] [source] [64-bit] [async-threads:64] [kernel-poll:true]\n"},{memory,[{total,40553872},{connection_readers,0},{connection_writers,0},{connection_channels,0},{connection_other,2592},{queue_procs,2592},{queue_slave_procs,0},{plugins,0},{other_proc,13540144},{mnesia,58592},{mgmt_db,0},{msg_index,34584},{other_ets,744088},{binary,13200},{code,16965867},{atom,654217},{other_system,8537996}]},{alarms,[]},{listeners,[{clustering,25672,"::"},{amqp,5672,"::"}]},{vm_memory_high_watermark,0.4},{vm_memory_limit,838911590},{disk_free_limit,50000000},{disk_free,37157068800},{file_descriptors,[{total_limit,65436},{total_used,3},{sockets_limit,58890},{sockets_used,1}]},{processes,[{limit,1048576},{used,123}]},{run_queue,0},{uptime,25}]
  • 查看 RabbitMQ 進程
ps -ef | grep rabbitmq

4. RabbitMQ 配置遠程連接

遠程訪問 RabbitMQ 自己增加一個用戶,步驟如下:

  1. 創建一個 admin 用戶:
sudo rabbitmqctl add_user admin 123123
  1. 設置該用戶為 administrator 角色:
sudo rabbitmqctl set_user_tags admin administrator
  1. 設置權限
sudo rabbitmqctl  set_permissions  -p  '/'  admin '.' '.' '.'
  1. 重啟 rabbitmq 服務:
 sudo service rabbitmq-server restart

之后就能用 admin 用戶遠程連接 rabbitmq server 了。

注意:RabbitMQ 默認使用 5672 端口,如果是在云端部署的話需要確認云端的 5672 端口開啟。

5. 啟用 Web 管理插件

查看默認支持的所有插件:

rabbitmq-plugins list

進入到 RabbitMQ 的安裝目錄執行

rabbitmq-plugins enable rabbitmq_management

訪問 http://localhost:15672/:

就可以看到 RabbitMQ 的 web 頁面。

總結

以上是生活随笔為你收集整理的RabbitMQ 入门系列(1)— Ubuntu 安装 RabbitMQ 及配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。