elmo 0 Zgłoś post Napisano Luty 25, 2011 Witam serdecznie, Na początku chciałbym zaznaczyć że jestem początkujący w administrowaniu serwerami. Staram się wszystko googlować i czytać, jednak mam problem który chciałbym skonsultować z mądrymi głowami Posiadam usługę która udostępnia pliki użytkownikom. Jest to dość duży trafik a pliki są od 10 MB do 100MB (no może kilka z nich jest nieco powyżej 100 MB - ale jest ich niewiele). Posiadam wykupione 3 serwery w OVH na których zainstalowałem nginx'a do wypychania tego kontentu. Wszystko jest wpięte do OVH'owego load balancera, tak aby rozdzielało ruch na te 3 serwery w miarę równomiernie. Jedynym problemem jest to że czasami trzeba poczekać kilka sekund zanim serwer zacznie wypychać jakiś plik. Chciałbym to jakoś w miarę zoptymalizować i teraz zaczęły się schody dla mnie Na moją głowę te opóźnienia wynikają z czasu dostępu do dysku. Czy może być to spowodowane tym że jest zastosowany jakiś niewydajny system plików, czy może dane w katalogach są słabo poukładane (mam praktycznie 2 katalogi które mają po kilka tysięcy plików) czy może jest jakiś inny powód? Czytałem że każdy worker nginxa blokuje na chwile zasób którego używa i teraz czy to chodzi o to że blokuje on tylko żądany plik czy też cały katalog? Tak ostatnio wymyśliłem żeby te mniejsze pliki ładować do pamięci RAM (taki jakby cache) i żeby taki "hot content" serwować bezpośrenio z pamięci (może by to skróciło czas oczekiwania na rozpoczęcie serwowania pliku przez serwer?). Dodatkowo czytałem o czymś takim jak proxy/reverse-proxy.. ale niewiem czy będzie mi to przydatne czy to raczej używa się do stawiania nginx'a przed serwerami bardziej zasoborzernymi Pozdrawiam elmo Udostępnij ten post Link to postu Udostępnij na innych stronach
theONE 526 Zgłoś post Napisano Luty 25, 2011 jakie masz serwery w ovh? i ile transferu wypychasz codziennie? Udostępnij ten post Link to postu Udostępnij na innych stronach
elmo 0 Zgłoś post Napisano Luty 28, 2011 jakie masz serwery w ovh? i ile transferu wypychasz codziennie? Hej, W infrastrukturze teraz mam wpięte 2 x EG Max Platinum 08 Revolution (stara oferta OVH) i 1 x EG BestOF 2010 Reloaded (z nowej oferty). Dzienny transfer średni to 100-120 mbit na serwer Udostępnij ten post Link to postu Udostępnij na innych stronach
elmo 0 Zgłoś post Napisano Marzec 2, 2011 Czy wstawienie Varnish'a na serwer i skonfigurowanie nginx'a jako proxy do niego wplynie na szybkosc wypychania kontentu? Udostępnij ten post Link to postu Udostępnij na innych stronach
megi 358 Zgłoś post Napisano Marzec 2, 2011 Hej Czytałem że każdy worker nginxa blokuje na chwile zasób którego używa i teraz czy to chodzi o to że blokuje on tylko żądany plik czy też cały katalog? Nginx blokuje się na odczycie z dysku tzn. ze dany worker nie obsłuży innego żądania dopóki nie przeczyta pliku. Ile masz workerów? Ustaw 2-4x tyle co CPU. Tak ostatnio wymyśliłem żeby te mniejsze pliki ładować do pamięci RAM (taki jakby cache) i żeby taki "hot content" serwować bezpośrenio z pamięci (może by to skróciło czas oczekiwania na rozpoczęcie serwowania pliku przez serwer?). Jeżeli masz wystarczająco pamięci to pliki tak czy siak idą z pamięci - ostatnio czytane pliki trzymane są w page cache'u. Wpisz free w konsoli i zobacz ile masz zajętej pamięci i ile z tego zajmuje cache. W przypadku serwowania staticu taki loadbalancing, jaki masz (losowe rozkładanie ruchu pomiędzy serwery), wcale nie musi być dobrym pomysłem. Gdybyś serwował stały content z każdego serwera (zakładając, że sieciówka wyrobi) to miałbyś mniejszy przemiał w page cache'u. Udostępnij ten post Link to postu Udostępnij na innych stronach