Temat: Specyfikacja techniczna serwera, przepustowość łącza a...

Witam!
Mam takie pytanie... Nie jestem specem w bazach danych/serwerach
dlatego piszę.

Chodzi o spostrzeżenia i Wasze doświadczenia.

Mam serwer dedykowany:
Procesor Intel Xeon E3 1245v2
Rdzenie / Wątki 4 cores / 8 threads
Częstotliwość 3.4 GHz+
RAM 32GB DDR3
Dyski 2x 2 TB SATA
RAID Soft
Sieć 1 Gbps
Przepustowość 250Mbps
Transfer Bez limitu
IPv4 1
IPv6 /64
Anty-DDoS Zawarte w ofercie

Stoi on na OVH na NGINX.

Na serwerze tym stoi 5 portali informacyjnych. Od czasu do czasu przy dużej ilości odwiedzin (niewykluczone, że to zbieg okoliczności) portale siadają i wyskakuje błąd NGINX. Firma
zewnętrzna obsługująca technicznie portale i zarazem twórcy systemu CMS na których stoją portale twierdzą, że przy około +/- 9 mln odwiedzin wszystko siada (oczywiście po interwencji admina wszystko rusza). Limit na ilość odwiedzin/połączeń? pierwsze słyszę...

Jeśli chodzi o ilość połączeń w jednostce czasu to jaka jest średnia wartość, żeby zapchać taki serwer?
Trochę to bez sensu. Rozumiem, żeby w ciągu kilku sekund bombardowało zapytaniami do bazy... może włącza się ANTY-DDOS?
Jak taki system działa? Czy trzeba zmienić ustawienia ANTY-DDOS? Czy trzeba zmienić na szybszy/lepszy serwera dedykowany?

Czy jest możliwość sprawdzenia ile zapytań generuje system CMS dla jednego wczytania np. strony głównej z poziomu zwykłego użytkownika np. w firebug? Jaka jest optymalna ilość zapytań na jedno odświeżenie strony? Czy optymalizacja kodu/zapytań w CMS-ie może pomóc?

Jak zweryfikować takie informacje? Ten post został edytowany przez Autora dnia 18.08.15 o godzinie 11:46

konto usunięte

Temat: Specyfikacja techniczna serwera, przepustowość łącza a...

Waldemar S.:
Witam!
Mam takie pytanie... Nie jestem specem w bazach danych/serwerach
dlatego piszę.

Chodzi o spostrzeżenia i Wasze doświadczenia.

Mam serwer dedykowany:
Procesor Intel Xeon E3 1245v2
Rdzenie / Wątki 4 cores / 8 threads
Częstotliwość 3.4 GHz+
RAM 32GB DDR3
Dyski 2x 2 TB SATA
RAID Soft
Sieć 1 Gbps
Przepustowość 250Mbps
Transfer Bez limitu
IPv4 1
IPv6 /64
Anty-DDoS Zawarte w ofercie

Stoi on na OVH na NGINX.

Na serwerze tym stoi 5 portali informacyjnych. Od czasu do czasu przy dużej ilości odwiedzin (niewykluczone, że to zbieg okoliczności) portale siadają i wyskakuje błąd NGINX. Firma
zewnętrzna obsługująca technicznie portale i zarazem twórcy systemu CMS na których stoją portale twierdzą, że przy około +/- 9 mln odwiedzin wszystko siada (oczywiście po interwencji admina wszystko rusza). Limit na ilość odwiedzin/połączeń? pierwsze słyszę...
Co 9 mln siada? ;) A bardziej na poważnie - wszystko siada, czy tylko jeden z 5 serwerów?
Zwykle jak mam podobne problemy - chodzi o ilość równoczesnych połączeń... innym problemem jest ilość przesyłanych danych. Trochę mało danych, żeby coś powiedzieć - ciekawe na czym polega interwencja admina... :)
Jeśli chodzi o ilość połączeń w jednostce czasu to jaka jest średnia wartość, żeby zapchać taki serwer?

Dużo zależy jak całość została skonfigurowana... Taki WordPress ma cache - generuje strony na dysku. Linux ma bufory w pamięci i dane, które są często serwowane lecą z ramu. Można tworzyć dedykowane rozwiązania - np. w oparciu o memcache, chociaż nie zawsze da się tak zrobić. Czasem jednak trzeba coś przetworzyć i wtedy statyczna strona nie zadziała.
Trochę to bez sensu. Rozumiem, żeby w ciągu kilku sekund bombardowało zapytaniami do bazy... może włącza się ANTY-DDOS?

Tu zależy jaka to baza danych i na czym to bombardowanie polega.
Co do rozwiązań... Zacząłbym od określenia problemu. Można optymalizować, tuningować, ale... żeby mniej-więcej coś powiedzieć - trzeba znać więcej szczegółów. Tak w ciemno - to mogę powiedzieć, że ten CMS jest w PHP na MySQL, z MyIsam - zmiana danych stawia locka na tabelkę - jak jest wystarczająco duży ruch - takie "przycięcie" powoduje skumulowanie i coś pada. No, ale - tak jak już napisałem - wróżenie z fusów. No, albo coś innego się kleszczy, albo też dane, do serwowania są trzymane w bazie i z niej serwowane... Tyle, że wtedy te 9 mln to chyba dziennie. :)
Jak taki system działa? Czy trzeba zmienić ustawienia ANTY-DDOS? Czy trzeba zmienić na szybszy/lepszy serwera dedykowany?
Zacząłbym od stwierdzenia w czym jest problem. Potem starałbym się rozwiązać go przez tuning, potem zmiany w oprogramowaniu, potem rozrzucił ruch na więcej maszyn. Można iść w chmurę.
Czy jest możliwość sprawdzenia ile zapytań generuje system CMS dla jednego wczytania np. strony głównej z poziomu zwykłego użytkownika np. w firebug? Jaka jest optymalna ilość zapytań na jedno odświeżenie strony? Czy optymalizacja kodu/zapytań w CMS-ie może pomóc?
Z poziomu klienta takie informacje nie są dostępne. Można udostępnić, ale... tak z automatu - nie ma. Powody są dwa - bezpieczeństwo i wydajność.
Do django (framework do pythona) jest moduł, który pozwala na udostępnianie takich informacji w trybie deweloperskim.
Optymalna ilość zapytań - no... zero. Tyle, że nie zawsze się da, bo czasem coś tam do bazy trzeba zapisać... Optymalizacja systemu może pomóc, ale nie musi. Dużo za mało informacji, żeby coś powiedzieć.
Jak zweryfikować takie informacje?
Normalnie jak jest taki zonk. To się wchodzi w nocy i ogląda, przestawia parę ustawień, żeby miało to sens. Potem się ustawia logowanie wszystkiego i się czeka - zwykle z takimi ustawieniami pad przychodzi szybko i wtedy można wyłączyć pełne logowanie, pobrać te dane, zrestartować serwer... No i można analizować sobie. Wtedy są wnioski, się zmienia i tak do zwycięstwa.

Temat: Specyfikacja techniczna serwera, przepustowość łącza a...

Waldemar S.:
wszystko siada

Serwer się wyłącza ? :) Musisz sprecyzować - konkrety.

ANTY-DDOS wycina ruch do Twego serwera. Mówiąc prościej - gdzieś po drodze do Twego serwera jest blokada która nie pozwala dla delikwenta otworzyć Twojej strony milion razy na sekundę :)

Nic nie bombarduje zapytaniami do bazy a co najwyżej uruchamia stronę która pobiera dane z bazy ...
Czy jest możliwość sprawdzenia ile zapytań generuje system CMS dla jednego wczytania np. strony głównej z poziomu zwykłego użytkownika np. w firebug?

Stawiasz kopię serwisu na innym hostingu/maszynie/w domu. Włączasz logowanie zapytań w mysql. Wchodzisz na stronę główną a następnie sprawdzasz w logu mysql zapytania.
Firebug może co najwyżej pokazać ile jest zapytań do serwera WWW jak wchodzisz na daną stronę.
Jaka jest optymalna ilość zapytań na jedno odświeżenie strony?

Nie ma takowej - wszystko zależy od konfiguracji.
Optymalizacja zawsze powinna pomóc.

Jak nginx wywala błąd error 503 (Service Temporarily Unavailable) to pewnie masz ustawioną za małą ilość requestów na sekundę.

Napisz jaki błąd dostajesz - będzie można coś więcej napisać.
Michał Z.:
Tak w ciemno - to mogę powiedzieć, że ten CMS jest w PHP na MySQL, z MyIsam

Serio ? Na nowych serwerach podczas instalacji defaultowo jest już InnoDB więc raczej pudło.
Poza tym jeżeli nginx pluje errorem to ...

konto usunięte

Temat: Specyfikacja techniczna serwera, przepustowość łącza a...

Sebastian O.:
[...]
Jak nginx wywala błąd error 503 (Service Temporarily Unavailable) to pewnie masz ustawioną za małą ilość requestów na sekundę.

Napisz jaki błąd dostajesz - będzie można coś więcej napisać.
Michał Z.:
Tak w ciemno - to mogę powiedzieć, że ten CMS jest w PHP na MySQL, z MyIsam

Serio ? Na nowych serwerach podczas instalacji defaultowo jest już InnoDB więc raczej pudło.
Poza tym jeżeli nginx pluje errorem to ...

Serio, serio... Niestety. Chociaż tak jak napisałem - wróżenie z fusów.
Tak samo zresztą jak mówienie, że leci taki albo inny błąd.
Pewnie i tak się nie dowiemy, więc nie bardzo jest sens ciągnąć. ;)

Temat: Specyfikacja techniczna serwera, przepustowość łącza a...

dzięki panowie za zaangażowanie. Na razie czekam na logi z serwera. Jesem ciekaw czy ja w ogóle dostanę hehe jak coś będę wiedział to napiszę.

konto usunięte

Temat: Specyfikacja techniczna serwera, przepustowość łącza a...

Waldemar S.:
dzięki panowie za zaangażowanie. Na razie czekam na logi z serwera. Jesem ciekaw czy ja w ogóle dostanę hehe jak coś będę wiedział to napiszę.

Spoko. Ja bym bardziej postawił na "zaproszenie" kogoś zewnętrznego.
W sensie... "Słuchajcie, ja się na tym nie znam, ale to co widzę wygląda źle. Skoro nie bardzo wiadomo na czym polega problem. Może audyt? Ktoś przyjdzie, podpisze NDA, wejdzie na serwer - popatrzy, zrobi raport - i będę miał jasność w sytuacji. Skoro i tak ja za cały ten bałagan płacę."
To nawet nie chodzi o sam audyt... To trochę jak problem z reklamacją i straszenie PIHem / UOKiKiem ;)



Wyślij zaproszenie do