精品专区-精品自拍9-精品自拍三级乱伦-精品自拍视频-精品自拍视频曝光-精品自拍小视频

網站建設資訊

NEWS

網站建設資訊

Centos7RabbitMQ消息隊列集群-創新互聯

一、簡介

創新互聯建站專注于企業網絡營銷推廣、網站重做改版、雨山網站定制設計、自適應品牌網站建設、HTML5商城系統網站開發、集團公司官網建設、成都外貿網站建設、高端網站制作、響應式網頁設計等建站業務,價格優惠性價比高,為雨山等各大城市提供網站開發制作服務。

   MQ(Message Queue,消息隊列)是一款消息中間件,一般以集群方式部署,主要提供消息的接受和發送,實現各微服務之間的消息異步。

1、集群原理

   rabbitmq 是依據erlang的分布式特性(RabbitMQ底層是通過Erlang架構來實現的,所以rabbitmqctl會啟動Erlang節點,并基于Erlang節點來使用Erlang系統連接RabbitMQ節點,在連接過程中需要正確的Erlang Cookie和節點名稱,Erlang節點通過交換Erlang Cookie以獲得認證)來實現的,所以部署rabbitmq分布式集群時要先安裝erlang,并把其中一個服務的cookie復制到另外的節點。

   rabbitmq集群中,各個rabbitmq為對等節點,即每個節點均提供給客戶端連接,進行消息的接收和發送。節點分為內存節點和磁盤節點,一般的,均應建立為磁盤節點,為了防止機器重啟后的消息消失;

   RabbitMQ的Cluster集群模式一般分為兩種, 普通模式和鏡像模式 。消息隊列通過rabbitmq HA鏡像隊列進行消息隊列實體復制。

   普通模式下, 以兩個節點(rabbit01、rabbit02)為例來進行說明。對于Queue來說,消息實體只存在于其中一個節點rabbit01(或者rabbit02),rabbit01和rabbit02兩個節點僅有相同的元數據,即隊列的結構。當消息進入rabbit01節點的Queue后,consumer從rabbit02節點消費時,RabbitMQ會臨時在rabbit01、rabbit02間進行消息傳輸,把A中的消息實體取出并經過B發送給consumer。所以consumer應盡量連接每一個節點,從中取消息。即對于同一個邏輯隊列,要在多個節點建立物理Queue。否則無論consumer連rabbit01或rabbit02,出口總在rabbit01,會產生瓶頸。

   鏡像模式下, 將需要消費的隊列變為鏡像隊列,存在于多個節點,這樣就可以實現RabbitMQ的HA高可用性。作用就是消息實體會主動在鏡像節點之間實現同步,而不是像普通模式那樣,在consumer消費數據時臨時讀取。缺點就是,集群內部的同步通訊會占用大量的網絡帶寬。

2、系統架構

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群

概念說明:

Broker:它提供一種傳輸服務,它的角色就是維護一條從生產者到消費者的路線,保證數據能按照指定的方式進行傳輸

Exchange:消息交換機,它指定消息按什么規則,路由到哪個隊列

Queue:消息的載體,每個消息都會被投到一個或多個隊列

Binding:綁定,它的作用就是把exchange和queue按照路由規則綁定起來

Routing Key:路由關鍵字,exchange根據這個關鍵字進行消息投遞

vhost:虛擬主機,一個broker里可以有多個vhost,用作不同用戶的權限分離

Producer:消息生產者,就是投遞消息的程序

Consumer:消息消費者,就是接受消息的程序

Channel:消息通道,在客戶端的每個連接里,可建立多個channel

二、環境準備

1、系統環境

主機名

系統

IP

用途

master

CentOS7.4

192.168.56.129

磁盤節點

slave1

CentOS7.4

192.168.56.130

內存節點

slave2

CentOS7.4

192.168.56.131

內存節點

2、暫時關閉防火墻和selinux

3、設置三個節點主機名hosts

[root@master ~]# cat /etc/hosts

192.168.56.129 master

192.168.56.130 slave1

192.168.56.131 slave2

三、搭建服務

1、安裝最新repo源

[root@master ~]# yum -y install epel-release

2、安裝三個節點的rabbitmq-server軟件包

[root@master ~]# yum -y install rabbitmq-server

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群

3、查看已安裝的插件

[root@master ~]# rabbitmq-plugins list

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群

4、啟動管理服務(三個節點)

[root@master ~]# rabbitmq-plugins enable rabbitmq_management

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群

5、分別啟動rabbitmq服務(三個節點)

[root@master ~]# systemctl start rabbitmq-server.service

rabbitmq集群部署

1、關閉服務(三個節點)

[root@master ~]# systemctl stop rabbitmq-server.service

2、進入cookie文件目錄,配置(各節點需要有相同序列號值)

[root@master ~]# cd /var/lib/rabbitmq/

[root@master rabbitmq]# vim .erlang.cookie

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群

3、再啟動rabbitmq服務

[root@master rabbitmq]# systemctl start rabbitmq-server.service

4、關閉rabbitmq應用(只關閉slave1和slave2)

[root@master rabbitmq]# rabbitmqctl stop_app

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群

5、將slave1、slave2加入master,使它們成為一個集群。再次啟動應用

[root@slave1 ~]# rabbitmqctl join_cluster --ram rabbit@master

[root@slave1 ~]# rabbitmqctl start_app

Centos7 RabbitMQ消息隊列集群

Centos7 RabbitMQ消息隊列集群

Centos7 RabbitMQ消息隊列集群Centos7 RabbitMQ消息隊列集群6、分別查看rabbitmq服務器狀態

[root@master ~]# rabbitmqctl cluster_status

Centos7 RabbitMQ消息隊列集群

Centos7 RabbitMQ消息隊列集群

Centos7 RabbitMQ消息隊列集群7、通過客戶端瀏覽器進行訪問RabbitMQ (用戶名:guest 密碼:guest)

http://192.168.56.129:15672

Centos7 RabbitMQ消息隊列集群

Centos7 RabbitMQ消息隊列集群

另外有需要云服務器可以了解下創新互聯cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


分享題目:Centos7RabbitMQ消息隊列集群-創新互聯
文章源于:http://m.jcarcd.cn/article/cccpoj.html
主站蜘蛛池模板: 91热爆 | 欧美最猛黑 | 91热爆在线精品 | 看特黄特色 | 欧美日韩综合一区 | 日韩免费影视 | 成人国产一区二区 | 国产九九精品视频 | 九色蝌蚪熟女 | 欧美在线不卡一区 | 国产性爱 | 日韩免费视 | 成人免费黄 | 欧洲在线一区 | 国产影视乱伦综合 | 国产偷亚洲 | 日韩一本之道一 | 国产免费对白视频 | 国产玩弄醉 | 绿帽社区在线观看 | 91欧美在线视频 | 日韩人兽 | 日本电影一区二区 | 成人午夜免费观看 | 午夜看片a福利在线 | 国产网友 | 91国产在线 | 国产精品欧美中文 | 国产在线ts| 岛国资源在线视频网 | 最新国产一区二区三区在线 | 97在线观看 | 91精品福| 国内外成人免费视频 | 欧美日一区二区三区 | 国产欧美另 | 久色悠悠精品 | 国产精品123 | 国产丝袜美女一区 | 日本有码中文 | 日韩图片精品午夜 |