![](https://s4.itho.me/sites/default/files/styles/picture_size_large/public/960420_439.jpg?itok=-cgghZ5y)
在數位經濟時代,企業欲建立永續競爭力,即需展現比對手更快的速度,搶先反應市場變化;驅使越來越多企業擁抱微服務,也讓微服務之間的通訊成為重要課題。為此紅帽(Red Hat)在近期定義了「AMQ Component」新的產品系列命名,彙集AMQ Streams、AMQ Broker、AMQ Clients 等等多項既有元件,組成完整 Message Queue 生態系,協助用戶在 OpenShift 容器平臺基礎上加速建置分散式消息傳遞機制。
紅帽臺灣分公司解決方案架構師沈涵羚指出,一套好的應用系統,除須具備好的程式邏輯,也要有好的資料流架構;因此紅帽特別提出 Level 1~4 不同場景的設計參考,讓用戶迅速上手建立消息機制。
Level 1 為原型階段,重點在於寫出功能,故直接讓程式邏輯接觸資料庫。到了 Level 2,為減輕資料庫負荷,在資料庫與程式之間新增快取層。在 Level 3 階段,用戶希望有一個可判別時序性的資料流機制,以及更具結構的格式化資料內容;所以一來套用各種程式語言框架的 ORM(Object Relational Mapping),二來撰寫程式打造陽春版消息機制。進入 Level 4 階段,企業考量服務規模日益擴增,亟需建立更穩定的消息機制,故獨立建置一套消息機制平臺。
藉由 AMQ Component 系列,用戶不論進入 Level 1~4 任何階段,皆能取用對應元件,進而大幅縮短從 Level 1 到 Level 4 的進化歷程。
不需鑽研繁瑣設定檔,透過滑鼠點選輕鬆完成安裝
沈涵羚表示,Red Hat AMQ 承襲諸多上游開源專案,其一就是著名的分散式消息專案 Apache Kafka,而 Kafka 正是消息機制的本體叢集。但在程式開發的實作上,應用程式與服務各有各的格式、甚至使用不同協定(Protocols),因此紅帽藉由 AMQ 搜羅相關協定轉換工具,讓使用者根據自身需要,選用與本體叢集相同方式來管理這些工具。
至於如何將 AMQ 運用於 OpenShift 環境?使用者只需透過滑鼠點選安裝即可,不需費時研究底層架構、或學習如何調整設定檔,大幅降低入門門檻與學習曲線,可謂 AMQ 的最大優勢。
AMQ 適用範圍涵蓋資料分析、機器學習、IoT 應用、電商服務、金融交易服務等分散式系統的應用情境,這些情境的共通點,在於服務價值都來自資料,故需確保資料能夠被穩定儲存,並恆常維持正確性。正因如此,當這些情境建置分散式系統時,經常面臨諸多問題。
首先是授權問題,須驗證使用者(包含人與程式)的合法存取資格。其次是資料儲存問題,須確保消息機制平臺可正確無誤地保存資料。再來是擴展問題,萬一資源不足時,消息機制平臺必須主動調度新資源進來,或將有限資源做有效合理的分配。最後須能提供一套 API,便於外部使用者(如其他部門的程式或同仁)運用消息機制。AMQ 的一系列 Components,正是為了解決上述問題而誕生。
善用不同 AMQ 元件,讓各項問題迎刃而解
其中 AMQ Streams 是用戶建置基礎消息系統的關鍵元件,本身已打包成為Operators,可完全獨立使用。用戶可利用它建置 Kafka Cluster及對應的Topic,並在程式的設定檔案裡指定要使用哪個 Kafka Cluster Address 及哪個 Topic Name、接著開始啟用 AMQ。
若用戶需要設計多個 Message Queue 叢集,可透過另一元件 AMQ Interconnect 來建立路由,將不同叢集連結起來。而在使用同一叢集中的不同服務時,往往需要居間轉換語言協定,即可利用 AMQ Broker 來介接不同 Router,達成服務協定轉換需求。
假使用戶需要建置安全授權機制,以驗證使用者的合法性,可啟用 AMQ Clients,讓使用者自己提供合法證書,再交由 AMQ 執行訊息交換,以確保交換管道的安全性。無論如何,這些元件不管功能為何,全都符合容器平台的一貫標準,方便使用者統一套用這些標準執行設定,不需為個別元件學習不同設定方法。
透過 AMQ 與 OpenShift 認證,培養 Message Queue 實作能力
沈涵羚重申,AMQ 標榜的獨特優勢,在於協助用戶跨越高聳學習曲線,除提供簡單易懂的安裝及 Day-2 自動化運維機制外,也能幫助開發團隊依實際服務需求拓展 Message Queues 的資源,再搭配 OpenShift 的資源限制機制,以便於在有限的資源下、讓 OpenShift 主動調整 AMQ Queues 規模。換言之,AMQ 具「開箱即用」效益,讓用戶直接使用紅帽的最佳化設定,直接在短短十分鐘內建構一個完整資料流,提供應用程式使用。因此開發團隊只要有好的架構設計靈感,就能輕易付諸實踐,不會因為入門門檻過高而受阻;否則按照傳統做法,從研究文件到完成建置,起碼耗費數小時之久。
「對於已擁有 Message Queue 相關技能及建置經驗者,仍可因 AMQ 獲益,」沈涵羚說,AMQ 可讓開發者專注於服務開發,不需煩惱基礎架構建設,同樣是美事一樁。
截至目前,AMQ 已累積頗多成功案例。如中華電信巧妙運用 AMQ 的分散式 Message Queue機制,得以在 iPhone 12 手機限時搶購活動中,迅速消化大量使用者需求,並確保資料正確性與時序性,因表現精采而贏得 2020 年紅帽亞太區創新獎殊榮。
值得一提,紅帽針對潛在合作夥伴設計 Partner Program ,表明若具備一定數量取得 Red Hat Certified 資格的開發人員,即有機會成為紅帽的 ISV 夥伴。不僅如此,紅帽也針對開發人員提供 AMQ 相關培訓 AD440、認證考試 EX440,再搭配 OpenShift 相關認證,幫助開發人員完整養成分散式 Message Queue 系統的設計規劃、叢集建置、程式開發落地實踐之能力,為企業建構最佳的資料流架構,加速孕育各種創新業務。
熱門新聞
2024-09-02
2024-09-02
2024-09-06
2024-09-02
2024-09-02
2024-09-03
2024-09-04
2024-09-02