訊息佇列有:1、RabbitMQ,是一個在AMQP基礎上完成的,可重複使用的企業訊息系統,是目前最主流的訊息中間件之一;2、ActiveMQ,是完全支持JMS1.1和J2EE1.4規範的【JMS Provider】實作。
1 RabbitMQ
RabbitMQ 2007年發布,是一個在AMQP(高階訊息佇列協定)基礎上完成的,可重複使用的企業訊息系統,是目前最主流的訊息中間件之一。
主要功能:
可靠性: 提供了多種技術可以讓你在效能和可靠性之間進行權衡。這些技術包括持久性機制、投遞確認、發布者證實和高可用性機制;
靈活的路由: 訊息在到達佇列前是透過交換器進行路由的。 RabbitMQ為典型的路由邏輯提供了多種內建交換器類型。如果你有更複雜的路由需求,可以將這些交換器組合起來使用,你甚至可以實現自己的交換器類型,並且當做RabbitMQ的插件來使用;
- ##訊息集群:在相同區域網路中的多個RabbitMQ伺服器可以聚合在一起,作為一個獨立的邏輯代理來使用;
- 隊列高可用:佇列可以在叢集中的機器上進行鏡像,以確保在硬體問題下也保證訊息安全;
- 多種協定的支援:支援多種訊息佇列協定;伺服器端以Erlang語言編寫,支援只要是你能想到的所有程式語言;
- 管理介面: RabbitMQ有一個易用的使用者介面,使得使用者可以監控和管理訊息Broker的許多面向;
- 追蹤機制:如果訊息異常,RabbitMQ提供訊息追蹤機制,使用者可以找出發生了什麼;
- 插件機制:提供了許多插件,來從多方面進行擴展,也可以寫自己的外掛;
2 ActiveMQ
ActiveMQ是由Apache出品,ActiveMQ 是完全支援JMS1.1和J2EE 1.4規範的JMS Provider實作。它非常快速,支援多種語言的客戶端和協議,而且可以非常容易的嵌入到企業的應用環境中,並有許多高級功能。 主要特性:- 服從JMS 規格:JMS 規格提供了良好的標準和保證,包括:同步或非同步的訊息分發,一次和僅一次的訊息分發,訊息接收和訂閱等等。遵從JMS 規範的好處在於,無論使用什麼JMS 實作提供者,這些基礎特性都是可用的;
- 連結性:ActiveMQ 提供了廣泛的連結選項,支援的協定有:HTTP/S,IP 多播,SSL,STOMP,TCP,UDP,XMPP等。對眾多協定的支援讓 ActiveMQ 擁有了很好的靈活性。
- 支援的協定種類多:OpenWire、STOMP、REST、XMPP、AMQP ;
- 持久化外掛程式和安全性外掛程式:ActiveMQ 提供了多種持久化選擇。而且,ActiveMQ 的安全性也可以完全依據使用者需求進行自訂鑑權與授權;
- 支援的客戶語言種類多:除了Java 之外,還有:C/ C ,.NET,Perl,PHP,Python,Ruby;
- 代理叢集:多個ActiveMQ 代理程式可以組成一個叢集來提供服務;
- #異常簡單的管理:ActiveMQ 是以開發者思維被設計出來的。所以,它並不需要專門的管理員,因為它提供了簡單又使用的管理特性。有許多中方法可以監控ActiveMQ 不同層面的數據,
- 包括使用在JConsole 或ActiveMQ 的Web Console 中使用JMX,透過處理JMX 的告警訊息,透過使用命令列腳本,甚至可以透過監控各種類型的日誌。
3 RocketMQ
RocketMQ出自阿里公司的開源產品,用Java 語言實現,在設計時參考了Kafka,並做出了自己的一些改進,訊息可靠性上比Kafka 更好。 RocketMQ在阿里集團被廣泛應用在訂單,交易,充值,流計算,訊息推送,日誌流式處理,binglog分發等場景。
是一個佇列模型的訊息中間件,具有高效能、高可靠、高實時、分散式特性;
Producer、Consumer 、隊列都可以分佈式;
Producer向一些隊列輪流發送訊息,隊列集合稱為Topic,Consumer如果做廣播消費,則一個consumer實例消費這個Topic對應的所有隊列,如果做叢集消費,
則多個Consumer實例平均消費這個topic對應的佇列集合;
- ##能夠保證嚴格的訊息順序;
- 提供豐富的訊息拉取模式;
- 高效率的訂閱者等級擴充能力;
- #即時的訊息訂閱機制;
- 億級訊息堆積能力;
- 較少的依賴;
#4 Kafka
Apache Kafka是分散式訊息發布訂閱系統。它最初由LinkedIn公司基於獨特的設計實現為一個分散式的提交日誌系統( a distributed commit log),之後成為Apache專案的一部分。 Kafka系統快速、可擴展且可持久化。它的分區特性,可複製和可容錯都是其不錯的特性。- 快速持久化,可以在O(1)的系統開銷下進行訊息持久化;
- 高吞吐,在一台普通的伺服器上既可達到10W/s的吞吐速率;
- .完整的分散式系統,Broker、Producer、Consumer都原生自動支援分散式,自動實現負載平衡;
- 支援同步和非同步複製兩種HA;
- #支援資料批次發送和拉取;
- zero-copy:減少IO操作步驟;
- 資料遷移、擴充對使用者透明;
- 無需停機即可擴充機器;
- 其他特性:嚴格的訊息順序、豐富的訊息拉取模型、高效訂閱者水平擴展、即時的訊息訂閱、億級的訊息堆積能力、定期刪除機制;
以上是訊息隊列有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

SublimeText3漢化版
中文版,非常好用

MinGW - Minimalist GNU for Windows
這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver CS6
視覺化網頁開發工具

mPDF
mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

禪工作室 13.0.1
強大的PHP整合開發環境