Aplikacje Windows Sockets o wysokiej wydajności
Składniki sieciowe systemu Microsoft Windows zostały opracowane pod kątem wydajności i skalowalności. Dzięki temu aplikacje mogą zmaksymalizować dostępną przepustowość sieci. Windows Sockets i stos protokołu TCP/IP systemu Windows zostały dostrojone i usprawnione. W związku z tym prawidłowo napisane aplikacje systemu Windows mogą osiągnąć wyjątkową przepływność i wydajność, jak pokazano w następujących faktach:
- System Windows może obsługiwać ponad 200 000 równoczesnych połączeń TCP.
- W teście przeprowadzonym przez SPECWeb96 internet information server w systemie Windows obsługiwał ponad 25 000 żądań HTTP na sekundę.
- System Windows ustawił rekord transmisji ponad 750 Mb/s w transkontynentalnych sieci gigabitowych składających się z 10 przeskoków.
Te osiągnięcia ilustrują, że protokół TCP/IP systemu Windows przetwarza dane bardzo szybko. Jednak wiele aplikacji nie korzysta z funkcji wydajności windows, TCP/IP i Windows Sockets, ponieważ nieświadomie implementują techniki utrudniające wydajność.
W tym przewodniku dowiesz się, jak identyfikować typowe błędy programistyczne i jak ich unikać. Następnie poznasz techniki, które umożliwiają aplikacjom Windows Sockets optymalne wykonywanie. Ten przewodnik jest przedstawiony w sześciu sekcjach. Kolejność sekcji jest celowa; aby jak najlepiej wykorzystać ten przewodnik, przeczytaj go w kolejności. Poniższa tabela zawiera linki do każdej sekcji, a także krótki opis każdego tematu.
Temat | Opis |
---|---|
Terminologia dotycząca sieci | Definiuje terminologię sieciową i metryki niezbędne do zrozumienia wydajności aplikacji sieciowej. |
wymiary wydajności | Omówienie wymiarów wydajności, które wpływają na postrzeganą i rzeczywistą wydajność sieci aplikacji. |
charakterystykę protokołu TCP/IP | Definiuje charakterystykę protokołu TCP/IP, które mogą powodować problemy z wydajnością dla słabo napisanej aplikacji. |
zachowanie aplikacji | Wyjaśnia, jak rozpoznawać oznaki niskiej wydajności aplikacji sieciowej. |
ulepszanie powolnej aplikacji | Zawiera przykłady problemów z projektowaniem aplikacji, które przyczyniają się do niskiej wydajności aplikacji i wprowadza zmiany w kodzie w celu zwiększenia wydajności. |
najlepsze rozwiązania dotyczące aplikacji interaktywnych | Zawiera listę najlepszych rozwiązań do zastosowania w celu tworzenia optymalnych interaktywnych aplikacji sieciowych. |