在現代的雲端架構中,應用程式會分離成許多較小的獨立建置區塊,它們較易於開發、部署和維護。訊息佇列能夠溝通和協調這些分散式應用程式。

訊息佇列可以大幅簡化去耦應用程式的編碼,同時改善效能、可靠性和可擴展性。您也可以使用散發設計模式中的發佈/訂閱簡訊結合訊息佇列。  

什麼是訊息佇列?

開始使用 Amazon Simple Queue Service (SQS) 只需三個簡單的命令。

免費試用 Amazon SQS

AWS 免費方案包含 100 萬個 Amazon Simple Queue Service (SQS) 請求。

查看 AWS 免費方案詳細資訊 »


訊息佇列可啟用非同步通訊,這表示生產和取用訊息的終端節點是與佇列 (而非彼此) 互動。生產者可將請求新增到佇列,不用等待它們進行處理。取用者只會在訊息可用時處理它們。系統中的元件不用停止來等待另一個元件,因此可優化資料流程。


佇列可持久儲存資料,而且降低當系統中不同部分離線時發生的錯誤。使用訊息佇列分開不同的元件可提升容錯能力。如果無法存取系統的某個部分,其他部分仍然可以與佇列互動。佇列本身也可以進行鏡像複製以提高可用性。


訊息佇列完全可以按照您的確實需要進行擴展。當工作負載達到峰值時,應用程式的多個執行個體可以將請求新增到佇列,不會出現衝突的風險。當佇列因為這些傳入的請求而變長的時候,您可以將工作負載分發給一群取用者。生產者、取用者和佇列本身都可以隨需要增加和縮減。


訊息佇列移除元件之間的相依性,大幅地簡化去耦應用程式的編碼。軟體元件不會因為通訊程式碼而變得笨重,反而可以設計為執行獨立的商業功能。

無論您使用整合型應用程式、微型服務或無伺服器架構,訊息佇列都是去耦分散式系統的細緻簡單方式。

使用訊息佇列可去耦整合型應用程式。多個程式不必在單一可執行檔中執行多個功能,而是透過在處理程序之間傳送訊息以交換資訊,讓訊息易於測試、偵錯、演變及擴展。

根據事件和非同步簡訊的微型服務整合模式優化了可擴展性和彈性。使用訊息佇列服務來協調多個微型服務、通知微型服務進行資料變更,或做為事件傳輸管道來處理 IoT、社交和即時資料。

如果您建置了無伺服器的微型服務、部署在伺服器上或安裝任何軟體類型,可以使用訊息佇列提供可靠、可擴展的無伺服器通知、處理程序之間的通訊,也可查看無伺服器功能和 PaaS。

只需三個簡單的命令即可免費試用。