ERPC 大規模升級 Solana RPC、WebSocket 與 Geyser gRPC 基礎設施 — 在與主要外部 RPC 服務的實測比較中,面向實時應用的效能顯著提升

ERPC 大規模升級 Solana RPC、WebSocket 與 Geyser gRPC 基礎設施 — 在與主要外部 RPC 服務的實測比較中,面向實時應用的效能顯著提升

ERPC 大規模升級 Solana RPC、WebSocket 與 Geyser gRPC 基礎設施 — 在與主要外部 RPC 服務的實測比較中,面向實時應用的效能顯著提升
ELSOUL LABO B.V.(總部:荷蘭阿姆斯特丹,CEO:Fumitake Kawasaki)與 Validators DAO 運營的 ERPC 宣佈,已對 Solana RPC、WebSocket 與 Solana Geyser gRPC 基礎設施完成大規模升級。
本次升級新增了最高效能級別的大型節點,並從統一系統的角度改進了 Solana RPC、WebSocket、Geyser gRPC、內部 gateway、實時資料分發 adapter、網路軟體以及伺服器配置。ERPC 基於長期積累的負載趨勢、訂閱模式、各方法使用情況,以及實時應用中容易出現的延遲因素,對接近真實生產使用路徑的效能進行了提升。
在 Frankfurt 的同一客戶端環境中,與主要外部 RPC 服務進行實測比較後,ERPC 在多個對實時應用重要的指標上表現出較高效能,包括 HTTP getSlot 中位數、WebSocket 連線時間、WebSocket transactionSubscribe 相容功能的首次通知、slot freshness 以及 errors。
本次改進並不侷限於某個新方案,而是會逐步應用到 ERPC 的 Solana RPC 與 Solana Geyser gRPC 相關方案整體。其影響對 Solana RPC 和 Geyser gRPC 的使用體驗尤為明顯,ERPC 也正基於 Frankfurt 已確認的改進,逐步向其他區域展開應用。

與主要外部 RPC 服務的實測比較顯示,實時應用效能顯著提升

本次比較從部署在 Frankfurt 的同一客戶端環境出發,在相同條件下對 ERPC 與主要外部 RPC 服務進行了測量。測試重點放在會直接影響實時應用體感差異的路徑上,包括 HTTP getSlot、WebSocket slotSubscribe 以及 WebSocket transactionSubscribe 相容功能。
代表性實測結果顯示,HTTP getSlot 的中位數為 ERPC 23.4ms、主要外部 RPC 服務 39.9ms,ERPC 約快 1.7 倍。WebSocket 連線時間為 ERPC 87ms、主要外部 RPC 服務 157ms,ERPC 約快 1.8 倍。WebSocket transactionSubscribe 相容功能的首次通知為 ERPC 240ms、主要外部 RPC 服務 556ms,ERPC 約快 2.3 倍。
對於 Solana 實時應用來說,單純的平均延遲並不夠。連線建立、首次通知、實時訂閱的穩定性、slot freshness 以及是否發生錯誤都很重要。尤其在 on-chain 事件檢測、交易應用、監控系統、告警分發、分析基礎設施、bot 和 backend API 中,首次通知到達的速度,以及訂閱開始後能否穩定接收資料,會直接影響後續處理何時能夠啟動。
在本次比較中,ERPC 與主要外部 RPC 服務在 processed 和 confirmed 的 getSlot freshness 上觀測到了相同 slot。在 WebSocket slotSubscribe 中,雙方也在同一時間觀測到了相同 slot。ERPC 在連線速度上體現出優勢,同時保持了相同的 slot freshness。雙方 errors 數量均為 0。

將 HTTP、WebSocket、Geyser gRPC 作為一體化系統改進

本次升級並不只是增加伺服器。ERPC 將 Solana RPC 的 HTTP 路徑、WebSocket 路徑、Geyser gRPC 路徑、內部 gateway、實時資料轉換 adapter、分發流程以及網路軟體作為一個整體進行了重新審視和改進。
在 Solana 應用的生產環境中,只有 HTTP RPC 快並不足夠。如果 WebSocket 連線緩慢、首次通知延遲、實時訂閱 throughput 無法擴充套件、從 Geyser gRPC 轉換到 WebSocket 相容層的過程中產生延遲,或 backend 處理在高負載下發生擁塞,實際應用體驗都會明顯變化。
ERPC 並不把 HTTP、WebSocket 和 Geyser gRPC 視為彼此孤立的功能,而是將它們作為接收、處理、分發 Solana 資料並交付給應用的一整條路徑來改進。本次大型節點追加、網路軟體改進、gateway 改進、WebSocket adapter 改進以及 Geyser gRPC 路徑最佳化,都是基於這一一體化思路實施的。

Geyser gRPC 路徑與 WebSocket adapter 改進強化首次通知效能

本次升級中效果尤其明顯的是 Geyser gRPC 路徑與 WebSocket adapter 的組合。ERPC 將作為 Geyser 事件接收的實時資料,以更容易透過 WebSocket 相容層使用的形式提供。
在 Frankfurt 同一客戶端環境中進行的 transactionSubscribe 相容功能比較中,ERPC 記錄的首次通知為 240ms,errors 為 0。主要外部 RPC 服務的首次通知為 556ms,errors 為 0。在首次通知上,ERPC 約快 2.3 倍,同時持續分發效能也確認達到同等或更高水平。
這一結果並不能僅用網路距離解釋。Solana 的實時資料分發最終效能由節點效能、Geyser gRPC 處理、gateway 處理、WebSocket 轉換、queue 處理、fanout 架構以及網路軟體效率共同決定。ERPC 會基於日常負載趨勢和實測結果,持續改進這些元件。

在維持 slot freshness 的同時加快連線和首次通知

提升速度時,同樣重要的是確認服務並不是更快地返回過期資料。在本次比較中,對於實時應用主要使用的 processed 和 confirmed getSlot freshness,ERPC 與主要外部 RPC 服務觀測到了相同 slot。
在 WebSocket slotSubscribe 中,雙方也在同一時間觀測到了相同 slot。ERPC 在連線速度上體現出優勢,同時保持了相同的 slot freshness。WebSocket slotSubscribe 的連線時間為 ERPC 87ms、主要外部 RPC 服務 157ms,ERPC 約快 1.8 倍完成連線。
同時,RPC 與 WebSocket 效能會隨區域、時間段、客戶端位置、訂閱條件和負載狀況而變化。ERPC 會分別確認中位數、p95、最大值、首次通知、throughput、slot freshness 和錯誤率,並持續改善真實使用中重要的指標。本次升級是一次重要進展,但 ERPC 不會把單次結果作為終點,而會繼續在各區域、各方法和各類 workload 上推進改進。

擴充包括 Burst 在內的 WebSocket / RPC 相容層支援範圍

除了效能提升外,本次升級還擴充了包括 Burst 在內的 Geyser gRPC 相關 endpoint 周邊 WebSocket / RPC 相容層的方法支援範圍。
例如,ERPC 新增了對 getVersion、getSlot、getBlockHeight、getLatestBlockhash、isBlockhashValid 等標準確認和狀態類方法的支援。這樣一來,環境不僅更適合實時訂閱,也更容易處理周邊狀態確認和輔助查詢。
ERPC 並不是只提供固定功能表的靜態服務。ERPC 會根據使用者實際使用的方法、訂閱條件、查詢和應用需求,持續擴充套件支援範圍。如果您在特定方法、請求、訂閱條件、WebSocket 相容功能或 Geyser gRPC 使用方式上遇到問題,請在 Validators DAO 官方 Discord 建立支援工單。共享具體請求內容、期望行為、發生的錯誤和使用場景,有助於我們參考實際需求,推進後續相容性擴充套件和效能改善。

面向 Solana RPC 與 Geyser gRPC 相關方案逐步全區域應用

本次改進並不侷限於特定專用配置。ERPC 將面向 Solana RPC、WebSocket 與 Solana Geyser gRPC 相關方案,在所有區域逐步應用。
在 Frankfurt,ERPC 已經透過與主要外部 RPC 服務的實測比較確認了顯著改善。接下來,ERPC 會逐步將這些改進應用到所有區域,並根據各區域的使用情況、負載趨勢、網路路徑和伺服器配置繼續調優。
ERPC 的優勢並不只是一次性增加新功能,而在於能夠基於真實生產使用中獲得的資料,持續改善現有方案的效能、方法覆蓋、分發路徑和伺服器配置。在 Solana 的生產環境中,網路狀況、流量、使用的方法、訂閱量和各區域需求始終在變化。ERPC 會作為專注 Solana 的平臺,隨著這些變化持續進化。

將同一客戶端環境下的實測值反映到持續改進中

ERPC 也會將與外部服務比較得到的實測值用於持續改進。本次測試中,ERPC 從 Frankfurt 的同一客戶端環境出發,分別確認了 HTTP getSlot、WebSocket 連線時間、WebSocket transactionSubscribe 相容功能的首次通知、slot freshness 和 errors 等指標。
Solana RPC 與 WebSocket 效能會受到區域、客戶端位置、訂閱條件、方法、時間段、負載狀況和 backend 架構的影響。因此,ERPC 不只關注單一平均值,也重視會影響真實應用處理開始時機的指標,包括連線建立、首次通知、slot freshness 和錯誤率。
對使用者而言,真正重要的是應用所需的資料能否以所需的速度和穩定性到達。ERPC 透過在同一 Solana 專用平臺上運營並持續改進 Solana RPC、WebSocket、Geyser gRPC、Shredstream、VPS 和裸金屬伺服器,提高這些真實可用的效能。

目標方案的 free trial 與真實 workload 驗證

目前,目標方案可以使用 free trial。使用者可以從 ERPC Dashboard 檢視適用方案,並在接近實際 workload 的條件下測試本次 Solana RPC、WebSocket 與 Geyser gRPC 基礎設施改進。
對 Solana 應用來說,benchmark 數字本身並不足夠。最適合的配置取決於應用使用哪些方法、客戶端從哪個區域連線、需要多少訂閱量、是否優先重視首次通知、是否優先重視 throughput,以及 slot freshness 對 workload 有多重要。
使用者可以在 ERPC Dashboard 中檢視 Solana RPC、WebSocket、Solana Geyser gRPC 等方案,並根據當前架構採用合適配置。已經使用 ERPC 的使用者,也可以在改進反映後的環境中確認現有 workload 的響應速度、訂閱效能和支援方法。

作為 Solana 專用基礎設施持續改進

ERPC 並不只是把 Solana RPC 作為簡單 API endpoint 提供,而是將其作為支撐 Solana 應用執行質量的基礎設施來持續改進。在 Solana 中,HTTP RPC、WebSocket、Geyser gRPC、Shredstream、SWQoS、伺服器部署、驗證者質量、網路路徑和處理節點效能,都會直接影響應用速度和穩定性。
ELSOUL LABO 自 2022 年以來已連續 5 年獲得荷蘭政府 WBSO 研究開發支援制度認定。公司持續開展有關 Solana RPC 基礎設施、驗證者運維、實時資料分發,以及基於 AI agent 的開發和運維支援的研發工作,其成果反映在 ERPC、SLV、SLV AI、AS200261 Solana 專用資料中心及相關服務中。
本次大規模升級也是這種持續研發的一部分。透過追加高效能大型節點、改進網路軟體、改進 gateway、改進 WebSocket adapter、改進 Geyser gRPC 路徑以及擴充支援方法,ERPC 正在進一步強化 Solana 實時應用所需的基礎設施效能。
ERPC 將繼續改善覆蓋 Solana RPC、WebSocket、Solana Geyser gRPC、Solana Shredstream、VPS 和裸金屬伺服器的 Solana 專用基礎設施。我們將繼續提供一個讓使用者能夠更快、更穩定地處理更多 Solana 資料的環境,並讓開發者能夠專注於應用開發和生產運營。

聯絡我們

關於 Solana RPC、WebSocket、Solana Geyser gRPC、Burst、支援方法、free trial、現有方案、區域、benchmark 或配置諮詢,請在 Validators DAO 官方 Discord 建立支援工單。
如果您在特定方法、訂閱條件、查詢、WebSocket 相容功能或 Geyser gRPC 使用方式上遇到問題,也請在聯絡時附上具體請求和期望行為。ERPC 會根據真實使用者需求,持續推進支援範圍和效能改善。
ERPC Dashboard:https://dashboard.erpc.global/en ERPC 官網:https://erpc.global/zh Validators DAO 官方 Discord:https://discord.gg/C7ZQSrCkYR