部落格>介紹 Blazar:Quicknode 專為Solana 打造的 WebSocket 解決方案

介紹 Blazar:Quicknode 專為Solana 打造的 WebSocket 解決方案

Solana其原生 WebSocket PubSub 在高負載下會遺漏訊息,且導致三種訂閱方法運作不穩定。Blazar 在基礎架構層級解決了此問題,開銷不到一毫秒,並完整支援所有方法,且無需修改SDK 。

Quicknode

Quicknode

2026年4月14日 — 閱讀時間 6 分鐘

介紹 Blazar:Quicknode 專為Solana 打造的 WebSocket 解決方案

對於需要即時鏈上資料的Solana 開發者而言,WebSockets 是首選方案,它不僅在前端和行動應用程式之間具備廣泛的相容性,對於事件驅動的後端而言,其實現途徑也比gRPC 更為簡便。

但Solana 的原生 WebSocket 實作,從未被設計用於處理大規模的大量資料。其中三分之一的 API 已被官方標記為不穩定,PubSub 在負載過高時會遺漏訊息,而大多數應用程式都默默地透過本不該需要的變通層來彌補這些問題。

我們開發了Blazar,就是為了從源頭解決這個問題。

什麼是布拉扎爾?

Blazar 是Quicknode 自研的Solana WebSocket 引擎,從頭開始建構,並針對Solana 開發人員在生產環境中執行的作業負載進行了專門優化。它並非任何開源解決方案的分支,也不是 Agave 原生 PubSub 的封裝。它針對您現有的Quicknode Solana endpoint 實作了一整套Solana WebSocket 訂閱方法,無需進行SDK 任何變更或遷移。

Blazar 比任何基於 Agave 原生 PubSub 所建構的系統都更快、更可靠且更完善。它能無損效能地處理大量並行訂閱者,並在 Agave 原生 PubSub 開始丟失訊息時,仍能維持一致的訊息傳遞。

除了基本效能之外,它還能為訂閱方案提供穩定的支援,而這正是多數服務供應商無法可靠地提供的。

過去不穩定的方法,如今已可投入生產使用

Solana的 WebSocket API 提供了九種訂閱方法。其中三種——voteSubscribe、slotsUpdatesSubscribe 以及blockSubscribe——在最新的 Agave 3.x 驗證器客戶端中已被官方標記為「不穩定」,且在標準的Solana WebSocket 連線中實際上無法存取。

對於需要區塊資料、投票資訊或詳細槽位狀態更新的開發者而言,這些方法是不可或缺的,而非邊緣案例。

🌠所有不穩定的 WebSocket 方法在 Blazar 上均已穩定。無需對SDK 進行任何變更。

投票 訂閱

投票 訂閱 在已處理的承諾層級上,於時槽確認之前且在任何最終性保證成立之前,即傳遞投票交易。由於其不穩定性,這項功能對大多數應用程式開發者而言一直難以使用。在 Blazar 上,這項功能不僅可用且可靠,從而開創了用於估算樂觀確認、投票參與儀表板,或按質權加權的區塊最終性追蹤等工具的可能性。

老虎機・最新消息・訂閱

老虎機・最新消息・訂閱 闡述了插槽的完整生命週期,從 firstShredReceived 透過 已完成, 樂觀確認,並最終 已越獄. 若您正在進行端到端延遲的效能測試,並需要精確掌握網路何時首次偵測到時槽,以及應用程式何時偵測到時槽,這種細緻程度就顯得至關重要。此外,它還能讓您在 樂觀確認,這是實務上最早上可以安全地對時槽採取行動的時點,無需進行輪詢或等待完全最終性。過去,若要可靠地取得此類時槽層級的訊號,必須自行架設驗證器基礎架構。在 Blazar 上,此訊號會透過標準的 WebSocket 連線傳送。

blockSubscribe

blockSubscribe 在原生的Solana WebSocket 連線中,此功能實際上無法使用。即使出現,高交易量也經常會導致訊息過大錯誤、連線中斷,或資料被靜默丟棄。在 Blazar 上,此功能則獲得完整支援且運作穩定,使得區塊級訂閱資料成為一種前所未有的可行選項。

擴展方法支援

Blazar 亦支援 transactionSubscribe,這是一種最初由 Triton 作為其 Whirligig WebSocket 代理的一部分所引入的方法。它雖不屬於標準的Solana WebSocket API 的一部分,但已成為廣受開發者採用的擴充功能,適用於那些需要比 訂閱日誌 或 帳號訂閱 提供。此方法讓您能依帳戶、交易結果及承諾等級進行篩選,因此非常適合用於即時追蹤計畫活動、針對交易失敗發出警示,或建立無需輪詢的即時掉期資料串流。

性能優勢

我們在真實的mainnet 環境下,將 Blazar 與最廣泛使用的開源Solana WebSocket 代理進行了效能比較。以下是我們的發現。

可靠的配送服務

Agave 的原生 PubSub 機制預設在單一工作執行緒上運行,無論可用核心數量為何,都會成為所有訂閱處理的瓶頸。在網路負載過高的情況下——也就是即時資料最為關鍵的時刻——原生 PubSub 系統將會丟失訊息,並導致無法預測的延遲驟升。

Blazar 專為消除這些故障模式而設計。在相同的重負載條件下,Blazar 展現出穩定且一致的表現:

blazar-不中斷連線

從資料來源獲取更快速的数据

標準的 RPC 基礎架構是透過更廣泛的 Turbine 網路接收資料,這意味著事件會在傳播路徑的更下游端抵達。Blazar 的上游資料來源由 ShredStream 驅動,從 Turbine 前 100 大領導者處接收「shreds」。啟用 ShredStream 的資料來源,其傳輸速度比一般的公開 Turbine 資料來源快約 200 至 250 毫秒。這項先發優勢會內建於每個事件中,在 Blazar 開始處理之前便已存在。

Blazar 在鏈上事件發生與您的應用程式接收該事件之間所增加的延遲,即使在高負載情況下,也不超過 1 毫秒。這適用於帳戶更新、完整區塊以及所有其他訂閱類型。

blazar-更快的連線
在所有測試情境中,Blazar 提供資料的速度都比最常見的 WebSocket 伺服器快得多。這 200 次連線測試皆使用 SysvarClock 帳戶,以確保該帳戶能持續更新。

在所有測試情境中,Blazar 提供資料的速度都比最常見的 WebSocket 伺服器快得多。這 200 次連線測試皆使用 SysvarClock 帳戶,以確保該帳戶能持續更新。

不損及品質的秤

每個 Agave 節點在處理有限數量的 WebSocket 訂閱者後,所有訂閱者的效能便會開始下降,進而需要額外的硬體資源並增加運作複雜度。Blazar 則能處理大量同時訂閱,且不會降低每位訂閱者的效能。無論總訂閱數為何,每位訂閱者都能獲得一致且低延遲的傳輸服務。

記憶體使用率
在所有情況下,Blazar 的記憶體使用量均大幅降低。

在所有情況下,Blazar 的記憶體使用量均大幅降低。

blazar-cpu-usage
在大多數情況下,Blazar 能顯著降低 CPU 使用率。

在大多數情況下,Blazar 能顯著降低 CPU 使用率。

效能測試是在受控且隔離的環境中進行的,客戶端從另一台獨立機器直接連線至伺服器,中間未經負載平衡器或邊緣層。

這對開發者意味著什麼

對於在Quicknode 上進行開發的開發者而言,Blazar 改變了您對 WebSocket 連線所能做出的假設:

  • 減少了變通方案。重試 邏輯、間隙偵測以及冗餘連線的存在,都是為了彌補傳輸不可靠所做的補償。由於 Blazar 已在基礎架構層級處理可靠性問題,這些補償性程式碼便不再必要。

  • 完整資料請參閱streams 。當 您的應用程式收到通知時 ,其之前的事件也會一併傳來。請在假設資料流是連續的基礎上建構您的邏輯。

  • 大規模運作下仍能維持可預測的效能。 隨著連線數增加,訂閱服務的 效能不會下降。 您的應用程式在規模擴展時,不會遭遇效能驟降的情況。

🌠Blazar 是一項免費升級,如果您是「Quicknode 」的客戶,您已經使用 Blazar 了。

Blazar 並非獨立產品、附加元件或高級方案功能。它是針對所有Quicknode Solana WebSocketendpoint 提供的免費升級,目前已全面推送到所有方案中。無需啟用、無需遷移,也無需額外付費。

開始使用

  1. 請登入您的Quicknode 控制台。

  2. 請選擇您的Solana endpoint 。

  3. 複製您的 WSSendpoint 網址,並使用現有的 WebSocket 客戶端程式碼進行連線。

初次接觸Solana WebSockets 嗎?《如何使用 TypeScript 為Solana 區塊鏈建立 WebSocket 訂閱》這份指南涵蓋了您所需的所有內容。

總結

Blazar 透過提供低於 1 毫秒的處理開銷、對所有九種訂閱方法(包括在 Agave 版本中被標記為不穩定的三種)的穩定支援,以及在大規模環境下仍能維持的基準測試效能,突破了Solana 原生 WebSocket 實作所設下的可靠性與效能上限。

WebSockets 仍是開發者獲取即時鏈上資料最簡便的方式之一。如今,其背後的基础架構已能滿足實際需求。請登入您的Quicknode 儀表板,立即開始使用。


關於Quicknode

Quicknode 成立於 2017 年,為開發者與企業部署機構級的區塊鏈基礎設施。憑藉 99.99% 的正常運行時間以及對 76 條以上區塊鏈的支持,各團隊得以在無須妥協的情況下,開發並擴展鏈上應用程式。

今天就開始動手吧

隨時掌握最新資訊

將最新的工程見解、產品更新及 Web3 新聞直接送至您的收件匣。