讀古今文學網 > OpenStack系統架構設計實戰 > 12.1.4 本節小結 >

12.1.4 本節小結

在Zaqar當前版本中,一個隊列不能擴展到多個數據存儲池,不能在多個存儲池間遷移消息,開發團隊正在努力解決這個問題。

Zaqar內部通信未採用直通(cut through)模式,而是使用存儲轉發(store and forward)模型,在消息發往目的地前進行緩衝存儲。存儲轉發模式,使得Zaqar服務可以很好地應對網絡分割、網絡擁塞、服務器故障等場景。但是由於存儲轉發模型多了一次數據存儲,性能低於直通模式。在通信協議層,Zaqar通過採用Websocket提高服務能力。

另一方面,Zaqar採用Python和HTTP,這兩項技術都是以便利著稱,然而便利往往是以低效為代價的。HTTP協議複雜,客戶端服務端消息解析都會引入較長的消息延遲,而Python的性能也往往被詬病。所以,Zaqar優化了Python棧實現,後端採用更高效的存儲驅動。

Zaqar期望轉型成為消息服務管理項目,對接第三方消息隊列服務,如RabbitMQ、ZeroMQ和其他商用方案,對其進行統一管理。