首頁  >  文章  >  後端開發  >  為什麼 Heroku 會回報關閉 WebSocket 連線的 H15 錯誤?

為什麼 Heroku 會回報關閉 WebSocket 連線的 H15 錯誤?

Patricia Arquette
Patricia Arquette原創
2024-10-23 13:39:02595瀏覽

Why Does Heroku Report H15 Errors for Closed WebSocket Connections?

排查Heroku 上的Web Socket 關閉錯誤(H15)

在Heroku 上部署WebSocket 伺服器時,可能會遇到H15 錯誤:客戶端關閉連線。這個錯誤通常被解釋為超時問題,讓開發人員感到困惑。然而,此錯誤的根本原因是 Heroku Router 引擎內的誤解。

詳細調查該行為後,很明顯該錯誤只是一個「誤報」。客戶端通常每 20 秒 ping 一次伺服器,從而有效地保持連線處於活動狀態。然而,當連線關閉時,Heroku 路由器會錯誤地將請求視為在開啟連線的整個持續時間內(最多 55 秒)處於空閒狀態。

因此,當客戶端關閉連線時,即使很優雅,Heroku 路由器也會將其註冊為服務時間超過允許的持續時間,從而觸發 H15 錯誤。

總而言之,關閉 WebSocket 連線時 Heroku 上的 H15 錯誤並不是真正的問題,而是由Heroku 路由器。它通常發生在用戶離開應用程式時,導致感知到的“時間太多”錯誤。

以上是為什麼 Heroku 會回報關閉 WebSocket 連線的 H15 錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn