我有一個Web應用程序,用戶需要經常連接。默認情況下,socket.io將在60秒後斷開連接。儘管我打開了「重新連接」,所以它基本上每分鐘關閉並重新打開連接。這可能會導致Feed /通知給我連接的客戶端。將此超時設置爲10分鐘還是更高可以安全嗎?現在有這麼低的原因嗎?在socket.io上設置高關閉超時安全嗎?
9
A
回答
3
我不相信你的套接字應該在60秒後斷開連接。我會調查爲什麼實際發生。在正確握手之後,套接字應該心跳並保持無限期開放(禁止網絡問題超出你的控制範圍),直到客戶端或服務器關閉連接,這絕對是我的經驗。
事實上,您的連接實際上是關閉它的聲音,可能無法正確握手,或者沒有收到心跳。
10
我的猜測是你可能會誤解'close timeout'
配置。它不會導致連接在60秒後關閉。 (如果客戶不斷重新連接,心跳將毫無意義)。
如果客戶端斷開連接,則close timeout
是釋放與該連接關聯的資源之前服務器將等待的時間量。從本質上講,這允許客戶端有間歇性的連接問題,試圖在服務器忘記它們之前重新連接。將close timeout
設置爲十分鐘可能是一個壞主意,因爲它會佔用服務器資源。
如果你的客戶實際上每隔60秒斷開一次,那麼就像samjm說的那樣,其他的事情是錯誤的。
0
您可能已經知道了這一點,但是您的套接字可能在60秒後斷開連接,因爲您沒有將心跳(「2 ::」)發送回服務器。
下面是一些與websocket client module一起使用的Python代碼。
# on_message handles messages from the server
def on_message(ws, message):
if message[:3] == '2::':
ws.send('2::')
相關問題
- 1. 在ObjectInputStream.readObject()上設置超時安全嗎?
- 2. Socket.io 1.0:配置關閉超時
- 3. 關閉ScheduledExecutorService安全嗎?
- 4. 安全提示爲「yui.yahooapis.com」,IE上的安全設置爲「高」
- 5. 在webClient.DownloadData上設置超時?
- 6. 在tcp上設置超時
- 7. 需要android設備設置屏幕關閉超時監聽器
- 8. 在關閉Linux時關閉SIGTERM處理程序的超時配置位置
- 9. 超時設置時不關閉套接字
- 10. 設置關閉WiX服務的超時時間
- 11. 關閉時設置變量
- 12. asp.net web配置設置和安全中的超時
- 13. 如何關閉Azure中的Internet Explorer增強安全設置
- 14. 進入到設置關閉 - 方法標記爲安全
- 15. 我可以全局設置HTTP連接的超時時間嗎?
- 16. 最佳PHP.ini設置提高安全性
- 17. 關閉警報 - 全局設置
- 18. socket.io - 運輸關閉
- 19. Javamail在超時時沒有完全關閉套接字
- 20. 在Django模型類上設置__new__安全嗎?
- 21. 如何安全關閉IndexReader?
- 22. 如何安全關閉GenericKeyedObjectPool?
- 23. 安全關閉數據庫
- 24. BufferedInputStream在設置postDelayed Runnable時關閉
- 25. socket.io有多安全?
- 26. Socket.io安全問題
- 27. 在org.apache.commons.io.FileUtils.copyURLToFile上設置超時時間?
- 28. 在jQuery上設置超時時間.load
- 29. 關閉黑莓的HttpConnection上超時
- 30. 如何在javascript中設置會話超時時間在javascript中關閉