重慶榮昌網(wǎng)站建設(shè)費用疫情優(yōu)化調(diào)整
一、RabbitMQ簡介
RabbitMQ 是一個由 Erlang 語言開發(fā)的 AMQP 的開源實現(xiàn)。主要用于在進程、應(yīng)用程序和服務(wù)器之間交換數(shù)據(jù),可以通過插件支持進行擴展,支持許多協(xié)議,并提供高性能、可靠性、集群和高可用隊列。
AMQP :Advanced Message Queue,高級消息隊列協(xié)議。它是應(yīng)用層協(xié)議的一個開放標準,為面向消息的中間件設(shè)計,基于此協(xié)議的客戶端與消息中間件可傳遞消息,并不受產(chǎn)品、開發(fā)語言等條件的限制。
二、RabbitMQ的優(yōu)勢
AMQP協(xié)議更多用在企業(yè)系統(tǒng)內(nèi),對數(shù)據(jù)一致性、穩(wěn)定性和可靠性要求很高的場景,對性能和吞吐量的要求還在其次。
RabbitMQ的可靠性是非常好的,數(shù)據(jù)能夠保證百分之百的不丟失。可以使用鏡像隊列,它的穩(wěn)定性非常好。所以說在我們互聯(lián)網(wǎng)的金融行業(yè)。
對數(shù)據(jù)的穩(wěn)定性和可靠性要求都非常高的情況下,我們都會選擇RabbitMQ。當然沒有kafka性能好,但是要比AvtiveMQ性能要好很多。也可以自己做一些性能的優(yōu)化。
RabbitMQ可以構(gòu)建異地雙活架構(gòu),包括每一個節(jié)點存儲方式可以采用磁盤或者內(nèi)存的方式。
三、RabbitMQ的具體特點
1、可靠性:RabbitMQ使用一些機制來保證可靠性。如持久化、傳輸確認及發(fā)布確認等。
2、靈活的路由:在消息進入隊列之前,通過交換機來路由消息。對于典型的路由功能,提供了一些內(nèi)置的交換機來實現(xiàn)。
3、擴展性:多個MQ節(jié)點可以組成一個集群,也可以根據(jù)實際業(yè)務(wù)情況動態(tài)地擴展集群中節(jié)點。
4、高可用性:隊列可以在集群中的機器上設(shè)置鏡像,使得在部分節(jié)點出現(xiàn)問題的情況下隊列仍然可用。
5、多種協(xié)議:除了原生支持AMQP協(xié)議,還支持STOMP、MQTT等多種消息中間件協(xié)議。
6、多語言客戶端:幾乎支持所有常用語言,比如C#、Java、Python、Ruby、PHP、JavaScript等。
7、管理界面:RabbitMQ 提供了一個易用的用戶界面,使得用戶可以監(jiān)控和管理消息、集群中的節(jié)點等。
8、插件機制: RabbitMQ 提供了許多插件 以實現(xiàn)從多方面進行擴展,當然也可以編寫自己的插件。
四、RabbitMQ的安裝
1、安裝文件下載
RabbitMQ 是一個由 Erlang 語言開發(fā)的,所以安裝RabbitMQ之前,需要先安裝Erlang
1)當前Erlang安裝包最新版本otp_win64_25.2.3,下載地址:Downloads - Erlang/OTP
2)下載RabbitMQ安裝包,當前最新版本rabbitmq-server-3.11.9,下載地址:Installing on Windows — RabbitMQ
2、安裝otp、rabbitmq
一路傻瓜式Next安裝
3、配置rabbitmq
找到rabbitmq安裝目錄D:\Program Files\RabbitMQ Server\rabbitmq_server-3.11.9\sbin
cmd進入Windows 系統(tǒng)的一種命令行操作工具,cd??D:\Program Files\RabbitMQ Server\rabbitmq_server-3.11.9\sbin,進入rabbitmq安裝目錄。
運行命令:rabbitmq-plugins enable rabbitmq_management 啟動管理服務(wù)
4、驗證安裝
至此,完成安裝還剩最后一步,也是最容易出問題的一步,這里需要?重啟rabbitmq服務(wù)、重啟rabbitmq服務(wù)、重啟rabbitmq服務(wù)(重要的事情說三遍)
cmd進入Windows 系統(tǒng)的一種命令行操作工具,輸入services.msc進入服務(wù)管理器,找到名稱為RabbitMQ的服務(wù),重啟服務(wù)。
?
然后,訪問地址http://localhost:15672/#/,如果看到如下頁面,表明RabbitMQ安裝成功,用戶名和密碼登錄,默認都為guest。