我有一個使用socket.io的服務器,我需要一種方法來限制發送服務器數據的客戶端太快。該服務器公開了一個TCP接口和一個socket.io接口 - 與TCP服務器(來自net
模塊)我可以使用socket.pause()
和socket.resume()
,這有效地節制了客戶端。但是使用socket.io的socket
類沒有pause()
和resume()
方法。Socket.IO服務器限制快速客戶端
什麼是最簡單的方式獲得反饋給客戶,它是壓倒性的服務器,需要放慢速度?我喜歡socket.pause()
和socket.resume()
,因爲它不需要客戶端的任何附加代碼 - 備份TCP套接字,事情自然放慢。任何等效的socket.io?
更新:我提供了一個API來與服務器交互(目前有一個運行在TCP上的Python版本和一個使用socket.io的JavaScript版本)。所以我沒有任何真正的控制客戶端的功能。這就是爲什麼使用socket.pause()
和socket.resume()
如此優秀 - 備份TCP流會減慢python客戶端的速度,無論它嘗試做什麼。我正在尋找一個JavaScript客戶端的等價物。
你會如何使用它?例如,在客戶端連接並且你有套接字之後,你把這個代碼放在哪裏? – Justin 2014-08-01 21:50:38