Sui主網正式啟用GraphQL Subscriptions,開發者無須反覆查詢區塊鏈資料,即可即時接收交易、事件與檢查點的變化。
Sui基金會在官方貼文中表示,GraphQL Subscriptions現已可在主網與測試網使用。GraphQL是一種可指定所需資料欄位的查詢介面,此次功能則將既有查詢能力與即時資料傳送結合。
開發者可針對檢查點、交易與事件設定訂閱。Sui基金會指出,交易與事件訂閱大致支援GraphQL查詢中使用的篩選器,但仍有部分例外。應用程式可以只接收特定套件產生的事件,或符合特定條件的交易。
這項功能的另一項特色,是能將歷史資料與即時資料串成同一條資料流。訂閱不必只從當下開始,開發者指定過去的游標後,系統會先補送該時間點至現在、符合條件的資料,再持續傳送新資料。
連線中斷時,開發者也能依據最後確認的游標重新補齊遺漏資料。Sui基金會表示,即使上游檢查點連線中斷,系統仍可恢復遺漏的檢查點,為訂閱者提供連續的資料流。
GraphQL Subscriptions可應用於錢包、區塊鏈瀏覽器、交易應用程式、分析工具與監控服務。例如,交易發生時更新餘額或持倉,或偵測特定合約產生的事件並記錄至其他系統。
Sui此前已透過gRPC提供即時訂閱功能。gRPC是適合高效能後端、交易所與大型索引系統的低階介面;GraphQL Subscriptions則可沿用既有GraphQL查詢中的類型與篩選器,讓應用程式開發者更容易選擇所需欄位及關聯資料。
Sui基金會表示,使用TypeScript、Python等主要程式語言的團隊,可以只訂閱應用程式所需的交易與事件,並儲存至自有資料庫或處理管線。不過,對於需要獨特儲存結構與處理邏輯的大型作業,客製化索引器框架仍較為合適。
GraphQL Subscriptions並非獨立運作的資料堆疊。即時資料會使用Sui的gRPC檢查點串流,歷史資料補送與查詢則使用gRPC帳本服務。這項功能目前可在主網與測試網使用,開發者可參考GraphQL Subscriptions文件設定訂閱。
留言 0