定義
心跳
定期發送以維持 WebSocket 連線的訊息。
定義
WebSocket 心跳是透過 WebSocket 連線定期發送的訊息,用以確認連線仍然存活。在 Polymarket 的 market WebSocket 中,伺服器期望每 10 秒收到一次 PING;缺少心跳可能導致伺服器或中介設備終止連線。
情境說明
當你訂閱 Polymarket 的市場資料頻道 (wss://ws-subscriptions-clob.polymarket.com/ws/market) 時,連線生命週期仰賴定期的心跳。伺服器會發出市場事件(best_bid_ask、last_trade_price、price_change、tick_size_change),並期望大約每 10 秒收到一次 PING 以避免逾時。實作應同時回應收到的 PING/PONG 框架,並在傳輸層或中介可能關閉閒置 socket 時,從客戶端端發送週期性 PING。
實務注意事項
- 使用略短於 10 秒的計時器(例如 9–10 秒),以容忍網路抖動與處理延遲。
- 在發生遺失心跳時,嘗試乾淨地重新連線並重新訂閱你的標的。重連邏輯應包含退避機制,以避免「驟增風暴」。
- 在重新訂閱時遵守每個連線最多 500 個標的的限制;WebSocket 將拒絕超出大小的訂閱請求。
參見
- /glossary/market-channel