我想知道向大量客戶端發送相同的小(<100B)有效負載而不為服務器資源支付銀行費用的最佳策略是什么。
我正在嘗試創建一個 API,它將多個媒體播放器同步到一個源,以便通過 http 推送異步資料來觀看各方。我不需要對客戶端進行身份驗證,并且資料不敏感。每個人的有效負載都是相同的,并且非常小~20-40 unicode chars。我希望有效載荷能夠每 2-3 秒更新一次,但我預測每 30-60 秒更新一次中值。我的限制是我希望能夠同時為多達一百萬用戶提供服務并使其免費使用。
我不確定如何平衡服務器資源的成本和對客戶端進行大量快速更新的可能性的高性能。是否有任何資源可以幫助我了解我的用例中服務器成本/性能的平衡?從技術角度來看,解決這個問題的最佳方法是什么?
所以 websockets 是不可能的,因為流資料和保持會話的成本很高,對吧?AJAX 推送是最輕量級的方法嗎?每個人的有效負載都相同這一事實如何影響減輕負載的可能策略?缺少身份驗證會極大地影響負載嗎?P2P 是不可能的嗎?
uj5u.com熱心網友回復:
最好的方法是使用 websockets
https://socket.io/將是一個很好的起點,
或https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API
另一種方法是使用 AJAX(正如您所提到的),但這會在每個請求上攜帶整個 HTTP 協議資料,使您的有效負載加倍(如果它那么小)。
所以通過 websocket 的二進制資料似乎是更好的解決方案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/419613.html
標籤:
