Amazon MQ 功能
受管服務
使用 Amazon MQ,您可以透過 AWS 管理主控台、AWS CloudFormation、命令列界面 (CLI) 或簡易的 API 叫用,在最短的時間內啟動生產就緒型訊息代理程式。Amazon MQ 可管理硬體佈建、代理程式設定、軟體升級和故障偵測與復原等管理任務。
安全性
Amazon MQ 提供靜態和傳輸中訊息的加密。因此可輕鬆確保訊息以加密格式安全地存放。與代理程式的連線使用 SSL,可將存取限制在您 Amazon VPC 內的私有端點,藉此將代理程式隔離在您的虛擬網路中。
Amazon MQ 整合了 AWS Identity and Access Management (IAM),讓您可控制 IAM 使用者和群組對特定的 Amazon MQ 代理程式所能採取的動作。從應用程式到代理本身的身份驗證使用使用者名稱和密碼的方法,對於 ActiveMQ 代理程式,還可以選擇使用 LDAP (輕量型目錄存取通訊協定)。
監控
Amazon MQ 與 Amazon CloudWatch 和 AWS CloudTrail 整合。您可以使用 CloudWatch 監控代理程式、佇列和主題的指標。例如,您可以監控佇列的深度,並在訊息未到達時產生警示。您可以使用 CloudTrail 記錄、持續監控和保留 Amazon MQ API 呼叫。
代理程式執行個體類型
Amazon MQ 目前支援五種代理執行個體類型:mq.t3.micro、mq.m5.large、mq.m5.xlarge、mq.m5.2xlarge 和 mq.m5.4xlarge。mq.t3.micro 執行個體專為產品評估而設計,而 mq.m5 執行個體類型則專為生產工作負載而設計。Amazon MQ 支援推薦用於評估和測試的單一執行個體部署模式,以及推薦用於生產的複製高可用性部署模式。
依用量計費定價
Amazon MQ 提供經濟實惠和可調整的容量,而且沒有最低費用。您只需為代理程式執行個體的執行時數以及每月使用的儲存付費。您可以輕鬆地以實惠的價格建立新代理程式來獲得額外容量。如需詳細資訊,請參閱 Amazon MQ 定價。
免費試用
AWS 免費方案提供每月最多 750 小時的單執行個體 mq.t2.micro 或 mq.t3.micro 代理程式,以及 ActiveMQ 代理每月最多 5GB 的 Amazon EFS 儲存或 RabbitMQ 代理每月 20GB 的 Amazon EBS,為期一年。
RabbitMQ 功能
高可用性、輸送量和訊息耐久性
Amazon MQ 上的 RabbitMQ 叢集代理程式由 Amazon EBS 提供支援,並使用多可用區域複寫來實現高可用性和訊息耐久性。節點間複寫的資料傳輸已包含在內,無須額外付費。叢集建立在單端點之上,以實現高可用性、簡單的管理以及與應用程式的輕鬆連接。
進階訊息路由
RabbitMQ 代理程式中的訊息在到達佇列之前透過交換進行路由。RabbitMQ 具有用於典型路由邏輯的幾種內建交換類型。RabbitMQ on Amazon MQ 還支援多種佇列類型,包括傳統佇列、經典鏡像佇列和 Quorum 佇列。只有 RabbitMQ 3.13 及更高版本支援 Quorum 佇列。Amazon MQ 建議使用 Quorum 佇列,做為工作負載的預設複寫佇列類型。
廣泛的用戶端語言支援
使用您喜歡的程式設計語言進行開發,包括:Python、.NET、PHP、Python、JavaScript、Ruby、Java 和 Go。
RabbitMQ 的其他功能
如需 RabbitMQ 功能的完整描述,請參閱 RabbitMQ 網站。
ActiveMQ 功能
高可用性、輸送量和訊息耐久性
Amazon MQ for ActiveMQ 提供由 Amazon Elastic File System (Amazon EFS) 提供支援的耐久性最佳化代理程式,以支援高可用性和訊息持久性。Amazon Elastic File System (Amazon EFS) 支援的耐久性最佳化代理程式,能夠以多個可用區域 (AZ) 的冗餘方式存放訊息。如果代理程式或 AZ 發生故障,作用中-待命代理程式就會自動容錯移轉至待命執行個體,如此一來您就可以繼續傳送和接收訊息。
Amazon MQ 還支援建立由 Amazon Elastic Block Store (EBS) 提供支援的輸送量最佳化訊息代理程式,非常適合需要高輸送量的使用案例,如大批量訂單處理、股票交易、文字處理等。輸送量最佳化訊息代理程式可減少所需的代理程式數目,以及使用 Amazon MQ 作大量應用程式的成本。
產業標準 API 和通訊協定
ActiveMQ 支援 Java Message Service (JMS v1.1 和 JMS v2.0)、.NET Message Service (NMS) 等多種用戶端,以及一系列其他語言,包括 Node.js、Go、Python、Ruby 及 C++。ActiveMQ 也支援傳輸層通訊協定,包括 AMQP、STOMP、OpenWire、WebSocket 及 MQTT。因為相容於產業標準,可加速從現有的訊息代理程式遷移、實現不同廠商間的相互操作性,並有助於避免依賴單一廠商。
JMS 簡訊功能
ActiveMQ 提供所有標準的 JMS 功能,包括點對點 (訊息佇列)、發布-訂閱 (主題)、請求/回覆、持久性和非持久性模式、JMS 交易和分散式 (XA) 交易。除基本佇列和主題外,ActiveMQ 另支援更多複雜模式,例如複合目標 (生產者可將同一則訊息傳送至多個目標,適合即時分析) 和虛擬目標 (發布者透過主題將訊息廣播至透過佇列訂閱的接收者集區)。
ActiveMQ 的其他功能
如需 ActiveMQ 功能的完整描述,請參閱 Apache ActiveMQ 網站。