Solace (PubSub+)
Product Technology

技術概覽

開發人員指南:Solace 技術的功能與效能指標概覽

訊息平台功能

Solace PubSub+ 訊息代理可在全球各地、透過各種網路,於所有應用程式、使用者與裝置間高效地傳輸資訊。Solace 以三種方式提供其最先進的 PubSub+ 訊息中介軟體技術:

  • Solace PubSub+ 是一款強大的訊息代理,可以在任何電腦的虛擬機或容器中執行。
  • Solace PubSub+ Cloud 是一種受管的訊息即服務(MaaS)產品,讓開發人員無需安裝、維護或升級訊息軟體,便能輕鬆使用 Solace PubSub+ 的強大功能。
  • Solace PubSub+ 硬體設備以純硬體方式路由訊息,提供無與倫比的容量、效能與穩健度,同時具備交鑰匙方案的低總擁有成本(TCO)。

Solace PubSub+ 提供無與倫比的容量、效能、穩健性及低 TCO,讓客戶能專注於掌握商機,而非構建與維護複雜的資料傳遞基礎設施。檢視組織目前面臨的挑戰急需要一條統一的數位骨幹,讓各應用程式能依需求任意互連,無論是:

  • 從公有雲到企業資料中心
  • 從感測器回傳到控制室
  • 分支辦公室如同總部一部分般運作
  • 需跨私有雲、公有雲或無雲環境互連的應用程式

Solace PubSub+ 事件代理可透過軟體、硬體或雲端任意組合部署,提供企業級的數位骨幹,並具備以下關鍵功能。本頁旨在快速向開發人員介紹這些功能,協助您打造優秀的應用程式。

  • 支援多種傳輸層與通訊協定;使 Solace PubSub+ 訊息代理成為理想的資料分發平台,可連接至任何應用程式
  • 輕鬆整合第三方產品
  • 企業級安全性,確保您的基礎設施與資訊始終受到保護
  • 極度穩定可靠,包括慢速消費者控制、容錯、高可用性與災難復原
  • 動態訊息路由,實現 Solace 訊息代理間的連通
  • 高效能,涵蓋訊息吞吐量、資料傳輸速率與延遲
  • 訊息快取讓應用程式能在即時訊息流中檢索最後的數據值
  • 訊息重放可讓應用程式於訊息傳送與交付後,長時間後依然檢索資料
  • 管理與監控工具,包括圖形化介面(GUI)、RESTful API、SYSLOG 等
  • 虛擬化讓多個應用群組共享單一 Solace 訊息代理的服務
  • 高速、可靠且頻寬高效的廣域網路分布

混合雲

Solace PubSub+ 讓您可依需求選擇最適合的雲端,並在技術與市場演進時隨時調整策略。您能自由在各雲端與既有系統間分享資料;伸縮與協定橋接皆由訊息層處理,而非程式碼,並透過開放標準協定與 API 避免被鎖死。

了解更多 PubSub+ 如何實現混合雲策略,或深入瞭解我們如何支援下列各雲端環境與技術:

多種服務支援

Solace PubSub+ 訊息代理程式支援多種不同的傳輸和協議,使其成為理想的資料分發平台,為您所有的訊息傳遞中間件需求提供「一站式服務」。

使用 Solace PubSub+,無需多款訊息產品來處理企業、巨量資料、網頁串流與 IoT 等需求,也不需額外部署 REST 或其他協定代理,程式皆已內建。Solace 訊息代理以單一整合技術完成所有功能,支援摘要如下:

Solace PubSub + Messaging APIs:
Solace Messaging API 為用戶端提供對 Solace 功能和服務品質的強大、統一的存取。

Solace 訊息傳遞 API 通常支援以下訊息交換模式:

  • 點對多(發佈/訂閱)
  • 點對點
  • 請求/回覆

共通功能
Solace 企業級 API 通常支援下列共通功能,如某項功能於特定 API 中有差異,將於該 API 專屬說明頁註明。

  • 與 Solace 訊息代理的連線管理
  • 主題訂閱的新增與移除
  • 傳送及接收「直達」與「保證」訊息
  • 不依特定架構或程式語言的結構化資料型別
  • 透過屬性參數廣泛支援日誌與自訂
  • Session Transactions and XA Transactions
  • 工作階段交易與 XA 交易
  • PubSub+ 快取用戶端 API 支援
  • 佇列瀏覽
  • 主題派送

開放協定與API
Solace 透過支援 JMSOpenMAMA 等開放 API,以及 MQTTREST 等開放線上協定,促進與應用程式、其他中介軟體及資料傳輸技術的整合。

非持久化與持久化訊息服務品質
Solace PubSub+ 支援兩種訊息交付模式:「直達」(非持久化)與「保證」(持久化);同時亦支援基於工作階段的交易與 XA 交易

進程間通訊
Solace PubSub+ 的 C 與 Java RTO 訊息 API 支援進程間通訊(IPC),讓同主機上的應用程式得以直接通訊,通常用於達成極低延遲或減少主機與訊息代理之間的頻寬使用。

與傳統系統整合

Solace PubSub+ 可輕鬆與商業和開源技術(包括應用伺服器、ESB 等)整合。欲知詳情,請參見:整合指南

微型閘道
對於以請求/回覆為主、最適合使用 RESTful HTTP 的微服務,PubSub+ 允許應用程式使用原生 HTTP 客戶端庫來傳送與接收訊息,而非任何訊息客戶端庫。

安全性

Solace PubSub+ 具有全面的身份驗證、授權和加密功能,可確保您的基礎設施和資訊始終受到保護,並透過內部和監管安全審核。

身份驗證

Solace PubSub+ 支援多種用戶端應用程式與管理員的身份驗證方式。

  • 應用程式與管理員皆可使用使用者名稱/密碼驗證,Solace 並支援一次性密碼(OTP)系統整合。
  • 應用程式與管理員亦可透過 LDAP、Radius、Kerberos 或內部資料庫整合進行驗證。
  • 應用程式可使用單一登入(Kerberos 令牌)或 TLS 用戶端憑證(X.509 憑證)進行驗證。

欲知詳情,請參見:客戶端身份驗證概述

授權
有多種方式可限制或授予應用程式與管理員執行任務的權限。

  • 可透過存取控制清單(ACL)管理應用程式授權,定義各應用程式可連線的 IP 位址及可發佈/訂閱的主題;ACL 可在設備上針對使用者名稱靜態配置,或依 LDAP 群組成員身份指派。
  • 訂閱管理功能可集中管理 Message VPN 內的訂閱,即集中控管哪些客戶端或服務獲得哪些訂閱;應用程式亦可使用 Solace 代為訂閱功能,讓一個特殊客戶端代表其他客戶端在同一 Message VPN 中管理訂閱。
  • 管理角色控管各管理員在訊息代理及各 Message VPN 中可查看或修改的內容;安全日誌記錄每次配置變更,並註明日期、時間及執行者。

欲知詳情,請參見:客戶端授權概述管理用戶端訂閱(使用訊息)

加密
為確保訊息與管理流量僅由預定收件者或管理員讀取,Solace PubSub+ 支援多種加密套件的傳輸層 TLS 加密。

欲知詳情,請參見:TLS/SSL 服務連接

穩健性

Solace PubSub+ 訊息代理是當今最穩健的訊息中介軟體技術,提供慢速消費者控制、容錯、高可用性與災難復原,無需第三方產品。

高可用性與容錯,快速故障切換
Solace PubSub+ 訊息代理可配置為高可用性(HA)冗餘對,以實現容錯。Solace 的高可用性提供一對一的代理配對,提升整體服務可用性。

災難復原
Solace PubSub+ 提供災難復原(DR)功能,無需複雜的外部機制(如儲存複製、鏡像閘道或插件)。Solace PubSub+ 能自動將主資料中心代理的訊息與交付狀態,複製到 DR 站點的代理;訊息可同步或非同步複製。Solace PubSub+ 亦能將所有配置變更自動傳播至 DR 站點代理,無需在代理間手動同步配置,確保系統簡單、穩健且高效。

欲知詳情,請參見:資料中心複製說明

慢速消費者處理
Solace PubSub+ 不允許慢速消費者影響發佈者與快速消費者的效能。在保證訊息模式下,即便對慢速消費者的訊息存儲持續增加,系統仍會認定並優先處理發佈者與快速消費者,超越慢速或回復中的消費者。

動態消息路由

Solace PubSub+ 訊息代理僅需幾次點擊即可配置成智慧、自動路由的事件網格(event mesh),將事件與資訊自動分發至任意數量的全球分散應用與裝置,宛如它們皆連接至同一代理,Solace 稱此為「動態訊息路由」。動態訊息路由可輕鬆透過新增或叢集更多 PubSub+ 代理,擴展基礎設施的容量或佈局(無論是地理覆蓋或混合雲部署)。

欲知詳情,請參見:

訊息 VPN 閘道
代理間橋接器稱為訊息 VPN 閘道。訊息 VPN 閘道提供兩個 Solace Message VPN 之間的互連。這些 VPN 可部署於不同資料中心的分開代理、同一資料中心內,甚至同一代理中。透過在兩個 Solace 訊息 VPN 間橋接訊息,可讓存在於完全獨立訊息領域的應用程式互通。訊息透過主題訂閱導流至 Message VPN,讓管理員可細緻控制橋接的訊息。訊息 VPN 閘道支援 Direct(直達)Guaranteed(保證)訊息

高效能

高吞吐量:Solace PubSub+ 硬體設備在直達訊息模式下可路由每秒 2400 萬則訊息,在保證訊息模式下可達每秒 160 萬則。對於直達與保證訊息,設備皆支援高達 40 Gbps 的進出流量。

欲知詳情,請參見:

低且可預測延遲
即使在高訊息率時,Solace PubSub+ 硬體設備仍保持低且可預測的延遲,並在各項服務品質(QoS)下達成低且穩定的延遲新標準。在直達訊息模式下,從發送端 API 到接收端 API 的平均延遲可低至 18 微秒;在保證訊息模式下,Solace PubSub+ 硬體設備提供多種效能選項,可讓 API 至 API 延遲低至 60 微秒。

訊息快取

Solace 的訊息快取解決方案 PubSub+ Cache,將高效能訊息流中的資料暫存於記憶體,以達到低延遲檢索。此快取功能已整合於 Solace API 中,提供複雜查詢與操作。

  • 速度與擴展性:PubSub+ Cache 可快取每秒 1,952,000 萬則訊息,並向請求快取訊息的客戶端傳送每秒最多 465,000 則,具體取決於當前接收與快取的訊息量(100 位元組訊息)。
  • Solace API 即時資料處理:PubSub+ Cache 的 Solace API 允許開發人員定義如何處理在快取請求尚未完成時到達的資料:可用於回應快取請求、於快取回應後交付給應用程式,或先立即交付給應用程式,待快取回應到達後再傳送。
  • 全球快取:當客戶端應用程式向本地 PubSub+ Cache 請求某物件的快取條目,而該物件是從遠端發布且尚未被本地快取時,本地 PubSub+ Cache 會自動從遠端快取檢索該物件並快取,並在本地更新,以服務後續請求。
  • 增量更新:PubSub+ Cache 支援用戶插件,允許在將訊息套用到快取中的映像前進行解釋。例如,若行情處理程序對某證券或訂單簿發出增量更新,用戶插件即可處理這些更新,如覆蓋最後一筆買賣價,或累計交易量等。

欲知詳情,請參見:

與傳統系統整合

Solace PubSub+ 支援訊息重放,讓客戶端可在訊息傳送與交付後數小時、數天甚至數週後,重新請求並接收該資訊。

訊息重放可讓應用程式取回遺失的訊息,輕鬆從系統故障與訂閱配置錯誤中復原;同時,也能先讓應用程式訂閱歷史訊息作為測試,才正式接入實時訊息流,使生產部署更安全順利;Solace 的訊息重放功能可逐應用程式配置,並可透過所有 Solace API 及支援的協定(AMQP、JMS、MQTT、REST、WebSocket)存取。

欲知詳情,請參見:

管理與監控

  • Solace PubSub+ Broker Manager 是隨 Solace PubSub+ 訊息代理提供的瀏覽器管理主控台,為新一代 UI,可用於配置、檢視與故障排除訊息代理。
  • Solace CLI:Solace 訊息代理支援命令列介面(CLI)。
  • Solace PubSub+ Monitor 收集並報告關鍵代理指標與事件,讓您在問題影響最終使用者前就能察覺;Monitor 亦可根據預設閾值與狀態事件發送警示,協助運維團隊主動解決問題並優化系統效能。
  • SolAdmin:SolAdmin 提供簡化的圖形化介面,用於管理 Solace 訊息代理屬性,滿足進階與新手管理員的需求。
  • SEMP:Solace Element Management Protocol 版本 2,是可用於配置 Solace 訊息代理的 RESTful API,補足 Solace CLI 與 SolAdmin 桌面客戶端 GUI,提供以程式化方式套用配置的方法。
  • SYSLOG:SYSLOG 標準用於接收非同步事件,包括客戶端連線/斷線、佇列閾值達成、磁碟閾值達成等多種豐富事件。應用程式可透過任一 Solace 訊息 API,訂閱感興趣事件的主題,以在訊息系統中接收這些非同步事件。

虛擬化

Solace PubSub+ 支援透過 Message VPN 功能,在單一代理內對應用程式群組進行虛擬化,實現完全的訊息隔離。

廣域網路優化

所有 Solace PubSub+ 訊息代理程式都整合了 WAN 最佳化,例如並行 TCP 連線、通常可產生 80% 有效載荷壓縮的流壓縮、緩衝區層級的控制以及 Linux TCP 堆疊允許範圍內的 TCP 參數(如慢啟動和擁塞管理)。