Jakie są zalety KeepAlive in Nginx
Tworzenie nowych połączeń TCP może konsumować wiele zasobów, takich jak zużycie pamięci i procesora. Jednak utrzymanie połączenia w Nginx może zmniejszyć to użycie. To kolejny powód, dla którego wysoce zaleca się utrzymanie połączeń HTTPS. Umożliwienie Keepalive może pomóc w poprawie wrażenia użytkownika i wydajności Twojej witryny. Pozwala przeglądarce ładować zawartość strony za pomocą pojedynczego połączenia TCP. Kolejną korzyścią, o której chciałbym tutaj wspomnieć, jest to, że poprawia szybkość strony internetowej ze względu na możliwość dostarczania kilku plików w tym samym połączeniu, zmniejszając opóźnienie i przyspieszając ładowanie stron internetowych.
Jak używać Keepalive w Nginx
Teraz sprawdźmy, jak możemy wykorzystać utrzymać przy życiu połączenie w Nginx. W tym celu otwórz plik konfiguracyjny Nginx w swoim edytorze Nano, pisząc poniżej dany w terminalu:
$ sudo nano/etc/nginx/nginx.confPlik konfiguracyjny Nginx będzie wyglądał tak:
KeepAlive Połączenia mogą poprawić prędkość poprzez obniżenie sieci i procesora powiązanego z zamknięciem i otwieraniem połączeń. Keepalives są obsługiwane przez Nginx zarówno dla serwerów upstream, jak i klientów. Wszystkie połączenia klientów są zakończone, a następnie Nginx ustanawia niezależne połączenia z serwerami powyżej.
Co to jest keepalive_timeout w nginx
podtrzymanie limitu czasu Wartość w pliku konfiguracyjnym Nginx wskazuje, jak długo serwer musi czekać na otrzymanie żądań od klienta. W inny sposób możemy powiedzieć, że wskazuje, że liczba sekund, które bezczynne połączenie Keepalive pozostanie otwarte. Najlepiej pozostawić bezczynne połączenie otwarte na około sześć do dziesięciu sekund. Jeśli wartość keepalive_timeout zostanie ustawiona zbyt wysoka, serwer zostanie przeciążony, a zasoby RAM zostaną zmarnowane. Składnia podtrzymanie limitu czasu W Nginx jest wspomniany poniżej:
KeepAlive_Timeout [czas]Kontekst keepalive_timeout w nginx: serwer, HTTP i lokalizacja
Teraz, w pliku konfiguracyjnym Nginx, ustawiamy wartość Keepalive_Timeout na 10 sekund:
KeepAlive_Timeout 10;Co jest keepalive_disable in nginx
KeepAlive_Disable Opcja pozwala na wyłączenie funkcji KeepAlive dla określonych rodzin przeglądarki. Składnia KeepAlive_Disable w nginx jest:
KeepAlive_Disable Browser1 Browser2;Kontekst Keepalive_Disable w Nginx: serwer, HTTP i lokalizacja
Teraz wyłączymy tylko „MSIE6„Przeglądarka do korzystania z funkcji Keepalive:
KeepAlive_Disable MSIE6;Co to jest Keepalive_requests w Nginx
Ponad pojedyncze połączenie Keepalive, Keepalive_requests Wartość wskazuje maksymalną liczbę żądań, które może obsłużyć. Domyślna wartość dla Keepalive_Requests wynosi 100. Można jednak ustawić wyższe wartości, co zwykle jest przydatne w testowaniu z narzędziem generowania obciążenia, które wysyła wiele żądań od jednego klienta. Składnia Keepalive_requests W Nginx jest:
KeepAlive_Requests [wartość];Kontekst keepalive_requests w Nginx: serwer, HTTP i lokalizacja
Teraz ustawimy „100000”Jako maksymalną liczbę żądań, które można obsługiwać przez jedno połączenie:
KeepAlive_Requests 100000;Keepalive Połączenia na serwerach powyżej
Możesz włączyć połączenia Keepalive dla serwerów upstream, ograniczając liczbę bezczynnych połączeń Keepalive przechowywane w pamięci podręcznej Process Process. Gdy serwer Upstream osiągnie wartość utrzymywania, połączenia użyte są zamknięte.
Dodaj poniższe wiersze w pliku konfiguracyjnym Nginx do ustawiania wartości dla serwera Upstream:
Backend w góręTutaj dodaliśmy „16”Jako liczba bezczynnych połączeń utrzymywanych z serwerem upstream, który pozostaje otwarty. Nie ma czegoś takiego jak domyślna wartość Keepalive dla serwerów upstream:
Aby zapisać dowolną ze zmian wprowadzonych w pliku konfiguracyjnym Nginx, naciśnij „Ctrl+o”:
Następnie uruchom ponownie usługę Nginx w systemie:
$ sudo systemctl restart nginxWniosek
Nginx jest wydajnym balansem obciążenia HTTP, który można wykorzystać w różnych sytuacjach wdrażania, a funkcja, która pomaga Nginx w wykonywaniu tej funkcjonalności, jest utrzymywana. Zarówno serwery upstream, jak i klienci obsługują utrzymywanie połączeń. W tym poście dowiedziałeś się o co jest utrzymywane w nginx. Ponadto wyjaśniliśmy również Keepalive_requests, podtrzymanie limitu czasu, KeepAlive_Disable dyrektywy i ich użycie w Nginx.