2011-09-13 13 views
10

Proste pytanieNginx serwowania statycznych dużego pliku

http://mysite.com/bigFile.avi plik #To jest 800MB

kiedy używać tego linku i pobrać bigFile.avi z mojej przeglądarce, serwer My Nginx skacze do 100% obciążenia procesora podczas sesja pobierania, zawartość statyczna, bez php. (normalne skrypty php używają 1-3% procesora)

Zastanawiam się, czy jest to normalne dla mojego serwera? Czy zużywa tyle CPU, aby obsługiwać duże pliki?

(i nawet wyłączyć gzip w konfiguracji nginx, ale nie ma dużej różnicy)

Odpowiedz

9

Spójrz na tych artykułów

Przyznam, że część tego jest poza mną. Krótko mówiąc, sugerują wyłączenie pliku send, włączanie aio i zwiększanie buforów wyjściowych, jeśli wysyłasz duże (> 4 MB) pliki. To, co zabrałem, to to, że większość domyślnych konfiguracji serwera zakłada, że ​​zostanie wysłanych wiele małych plików, a nie kilka lub wiele dużych plików. Te dwa różne scenariusze mogą wymagać bardzo różnych konfiguracji do wydajnej pracy.

10

Jak nginx można pisać dużych plików w dysku przed wysłaniem ich do klienta, to często dobry pomysł, aby wyłączyć pamięć podręczną, jeśli witryna ma zamiar służyć dużych plików statycznych, z czymś takim:

location/{ 
    proxy_max_temp_file_size 0; 
} 
Powiązane problemy