Jeśli mam otwarte połączenie między serwerem a klientem pulpitu, czy jest prawdą, że nie ma danych lub przepustowości pomiędzy tymi dwoma, z wyjątkiem sytuacji, gdy jednoznacznie wyślę niektóre? A jeśli to prawda, czy oznacza to, że zasadniczo mogę mieć tysiące otwartych połączeń na serwerze w tym samym czasie, o ile dane były przesyłane bardzo rzadko?Czy otwarte strony internetowe używają przepustowości lub innych zasobów?
8
A
Odpowiedz
3
Technicznie tak. Chociaż protokół WebSocket ma ramki ping/pong, a każdy z tych dwóch końców może okresowo wysyłać pingi i spodziewać się pongów jako odpowiedzi, w przeciwnym razie zabiłoby to połączenie.
Byłby bardzo zły pomysł, aby nie wdrożyć mechanizmu "keep alive", nie będziesz w stanie stwierdzić, które połączenia są rzeczywiście połączone lub nieprawidłowo zamknięte.
http://blog.stephencleary.com/2009/05/detection-of-half-open-dropped.html
Powiązane problemy
- 1. Dlaczego główne strony internetowe używają gzip?
- 2. Dlaczego niektóre aplikacje internetowe używają strony pośredniej przed przekierowaniem?
- 3. Co strony internetowe takie jak YouTube używają do zmiany adresu URL bez wywoływania popstate lub beforeunload?
- 4. Czy prawidłowe strony internetowe ładują się szybciej?
- 5. Strony internetowe Maven Transitive Dependencies
- 6. Duże strony internetowe MVC, użyj jednego kontrolera ... lub wielu?
- 7. skutki uboczne na innych zasobów
- 8. Pakiety internetowe używają istniejącej mapy źródłowej z poprzedniego kroku kompilacji
- 9. Czy WebSockets ma limit przepustowości?
- 10. Najlepsze strony internetowe dla wzorców projektowych?
- 11. Jak odróżnić usługi internetowe SOAP lub REST?
- 12. Niezbędne strony internetowe - Uruchamianie zdarzeń kompilacji
- 13. Otwarte android aplikacji ze strony internetowej
- 14. Way Uzyskiwanie dostępu do zasobów i zasobów identyfikatory innych Apps
- 15. Uzyskiwanie statystyk przepustowości połączenia
- 16. Sprawdź, czy żądanie strony zasobów AngularJS $ w .NET MVC
- 17. Wielokrotny wybór za pomocą UISegmentedControl - czego używają Strony?
- 18. CasperJS nie ładuje zasobów strony
- 19. Duże witryny internetowe - wiele baz danych lub wiele tabel?
- 20. Czy bazy danych NoSQL używają lub potrzebują indeksów?
- 21. Czy abstrakcyjne fabryki używają "nowego"?
- 22. Dlaczego niektóre funkcje Data.List.Split używają `Int` i innych` Integral a`?
- 23. Strony internetowe AngularJS: pojedyncze aplikacje SPA/wielokrotne SPA/komponenty
- 24. Silnik aplikacji Google lub usługi internetowe Amazona
- 25. Czy CURLOPT_NOBODY nadal pobiera treść - przy użyciu przepustowości
- 26. Czy przejścia i animacje d3 używają requestAnimationFrame?
- 27. Czy aplikacje internetowe iPhone'a mogą uzyskać pozycję GPS?
- 28. Ograniczanie przepustowości http get
- 29. Nie można utworzyć lub otworzyć strony internetowe w Visual Studio 2012 SP1 x64 Ostateczny
- 30. Duże strony internetowe, które zostały opracowane przy użyciu Ember.js
Niektórzy z nas wierzy, utrzymywanie aktywności to duża brodawka na TCP, co niepotrzebnie kruchy na niską przepustowość, linki niskiej niezawodność (_e.g._, amatorskich łączności satelitarnej). –
Nie zapomnij o zasobach nie związanych z przepustowością. W większości systemów otwarte połączenie TCP (_e.g., WebSocket) zużywa wiele ograniczonych zasobów, nawet bez ruchu pakietowego. Pamięć bufora i bloki sterujące połączeniem są najbardziej rozpowszechnione, ale w niektórych systemach również numery portów. –
Ramki Ping/Pong mogą być tak małe jak dwa bajty, a posiadanie tysięcy połączeń przy niewielkiej aktywności nie stanowi problemu dla żadnego nowoczesnego komputera. Wykonuję testy wydajności z tysiącami ich na moim laptopie jako serwer. Ponieważ urządzenia przenośne mogą utracić połączenie bez odpowiedniego zamknięcia połączenia, zalecane jest posiadanie mechanizmu utrzymywania aktywności. – vtortola