Jak włączyć dyrektywę Nginx Sendfile

Dyrektywa Sendfile w NGINX to zaawansowana funkcja, która znacznie zwiększa wydajność serwera, umożliwiając wydajną obsługę danych, zmniejszając obciążenie serwera i obsługując skalowalne konfiguracje. Wykorzystując tę ​​dyrektywę, NGINX może bezpośrednio przesyłać dane z systemu plików do gniazda sieciowego, omijając przestrzeń użytkownika i minimalizując obciążenie procesora. Skutkuje to szybszym dostarczaniem plików i lepszą ogólną wydajnością, co czyni ją niezbędną optymalizacją w przypadku witryn i aplikacji o dużym natężeniu ruchu.

Poniższy przewodnik pokaże, jak włączyć dyrektywę Sendfile w NGINX przy użyciu poleceń interfejsu wiersza poleceń (CLI) w systemach Linux lub Unix. Wykonując poniższe kroki, możesz mieć pewność, że Twój serwer będzie wydajniej obsługiwał dane, zmniejszał obciążenie i skutecznie skalował się w celu spełnienia wymagań dotyczących wydajności.

Włącz dyrektywę Sendfile w Nginx

Weryfikacja obsługi jądra dla Sendfile

Przed wdrożeniem dyrektywy Nginx Sendfile istotne jest sprawdzenie, czy jądro systemu obsługuje wywołanie systemowe sendfile. Chociaż ta funkcja jest powszechnie dostępna, weryfikacja jest dobrą praktyką.

Wykonaj następujące polecenie, aby sprawdzić obsługę pliku sendfile:

grep SENDFILE /boot/config-$(uname -r)

Pozytywne potwierdzenie wygląda następująco:

CONFIG_SENDFILE=y

Aktywacja Sendfile w NGINX

Aby włączyć funkcję Sendfile, uzyskaj dostęp do pliku konfiguracyjnego NGINX. Ten plik zwykle znajduje się pod adresem /etc/nginx/nginx.conf.

W tym celu użyj edytora tekstu wiersza poleceń, takiego jak Nano lub Vim:

sudo nano /etc/nginx/nginx.conf

W bloku HTTP tego pliku poszukaj dyrektywy sendfile. Jeśli go nie ma, dodaj następujący wiersz:

http {
    sendfile on;
    ...
}

Jeśli sendfile jest wyłączony (wyślij plik wyłączony;), zmień go na on lub jeśli go brakuje, po prostu dodaj linię.

Po zmodyfikowaniu pliku zapisz zmiany i wyjdź z edytora.

Ponowne uruchomienie NGINX w celu zastosowania zmian

Po konfiguracji konieczne jest sprawdzenie konfiguracji NGINX pod kątem ewentualnych błędów. Użyj tego polecenia, aby przetestować konfigurację:

sudo nginx -t

Oczekiwany wynik powinien potwierdzić pomyślną walidację:

nginx: configuration file /etc/nginx/nginx.conf test is successful

Aby zastosować zmiany, zrestartuj serwer NGINX. W zależności od systemu użyj jednego z następujących poleceń:

sudo systemctl restart nginx

Lub

sudo service nginx restart

Wniosek

Na tym kończy się nasz przewodnik dotyczący optymalizacji serwera NGINX za pomocą dyrektywy Sendfile. Omówiliśmy, jak sprawdzić, czy Twój system obsługuje Sendfile, włączyć ją w konfiguracji NGINX i zapewnić prawidłowe działanie po ponownym uruchomieniu serwera. Wdrożenie tej regulacji może znacznie zwiększyć wydajność serwera w obsłudze plików statycznych. Ostateczną rekomendacją jest regularne monitorowanie wydajności serwera po wprowadzeniu tych zmian. Nawet drobne zmiany mogą skutkować znaczną poprawą.

Joshua James
Chodź za mną
Najnowsze posty autorstwa Joshua James (widzieć wszystko)

Dodaj komentarz