Czy WebSocket zapewnia wsparcie dla kompresji danych, aby oszczędzić przepustowość? Jakie są dostępne opcje? Jednym z możliwych rozwiązań może być użycie Bijsona zamiast Jsona.Kompresja danych WebSocket
Odpowiedz
Można tunelować wszystko przez połączenie ssh z wyłączonym szyfrowaniem i kompresją ustawioną na maksimum?
np .: specyfikacje
ssh -N -g -f -C -o CompressionLevel=9 -o Cipher=none [email protected] -L 6999:172.16.1.218:3129
websocket umożliwienia rozszerzenia, jak upust powietrza strumienia. Jednak klient może i nie jest obsługiwany przez klienta i serwer.
Możesz chcieć używać Zipa lub innych algorytmów kompresji javascript.
Pierwszym sposobem, w jaki Websockets oszczędzają przepustowość, jest pozostawienie otwartego połączenia dla wielu (dwukierunkowych) wiadomości. Połączenie może pozostać otwarte tak długo, jak będzie potrzebne. Oznacza to, że nowe połączenie nie musi być negocjowane dla każdej transakcji, takiej jak stara metoda http. Same wiadomości zawierają informacje nagłówkowe, które określają, czy przychodząca wiadomość jest tekstowa czy binarna oraz jak długo trwa "ładunek".
Możesz pozwolić swojej usłudze interpretować wiadomości w dowolny sposób. Konkretne dane kompresji związane może być wyrażony poprzez rozszerzeniach: patrz rozdział 9 normy: http://tools.ietf.org/html/draft-ietf-hybi-thewebsocketprotocol-15#section-9
Organizacja standardy opracowała projekt pracy dla przedłużenia kompresji: http://tools.ietf.org/html/draft-tyoshino-hybi-websocket-perframe-deflate-00
Obecny projekt protokołu WebSockets nie zawiera rozszerzenia kompresji . Poprzednio był jeden: deflate-stream, który działa poprzez kompresję całego strumienia WS. Skuteczność tego jest ograniczona, ponieważ WS wprowadził maskowanie ramek typu klient-serwer, z maską zmienioną na klatkę, i przez to deflacja nie byłaby w stanie utrzymać efektywnego słownika kompresji.
Istnieje wersja robocza dla kompresji opartej na ramce, która działa w ten sposób, ponieważ słownik kompresji jest utrzymywany dla ładunku przed maskowaniem.
- 1. Klient kompresja danych klienta
- 2. Kompresja danych: Niepewne kodowanie arytmetyczne
- 3. kompresja i dekompresja ciągów danych w java
- 4. Kompresja danych postów HTTP wysłanych z przeglądarki
- 5. Kompresja bezpośrednio ze strumienia
- 6. Kompresja Rubyzip vs natywna OS
- 7. Kompresja WCF REST
- 8. Kompresja memcache - dobra/zła?
- 9. Android HttpURLConnection: kompresja gzip
- 10. Kompresja Zlib na MSP430
- 11. Kompresja wielowątkowa w C#
- 12. Kompresja SDCH dla węzła?
- 13. Kompresja archiwum zip
- 14. Kompresja gzip Web Api
- 15. 7zip Najszybsza kompresja LZMA2
- 16. Kompresja obrazu JPEG
- 17. Koszt bezpiecznego websocket a niezabezpieczony websocket
- 18. komunikacja websocket między serwerami
- 19. Kompresja GZIP do tablicy bajtów
- 20. skalowalność websocket
- 21. Biblioteka WebSocket
- 22. Konfiguracja połączenia z Websocket
- 23. javascript websocket onmessage event.data
- 24. HTML5 Websocket in Webworker
- 25. Subprotocol podprocedura-odpowiedź WebSocket
- 26. Kompresja dużego ciągu w rubinie
- 27. Co to jest kompresja gZip?
- 28. Kompresja JavaScript w systemie Windows
- 29. Kompresja tekstury OpenGL systemu Android
- 30. Kompresja strumienia CUDA: zrozumienie pojęcia