Porównaj ceny domen i usług IT, sprzedawców z całego świata

Testowanie wydajności klastra LAMP - jak znaleźć szyję?


Skonfigurowałem klaster składający się z trzech węzłów, na którym działa aplikacja LAMP, a HAProxy równoważenie obciążenia. Teraz chcę zoptymalizować i przetestować system. Nie używam więc jmeter-ec2, który uruchamia 15 instancji AWS-t1.micro z regionu Irlandii, wykonując test jmeter na klastrze zlokalizowanym w dedykowanym centrum danych w Niemczech.
Problem polega na tym, że serwery ledwo radzą sobie z obciążeniem 0,5, podczas gdy jmeter raportuje tylko około 70 tps. Teraz zastanawiam się, gdzie jest wąskie gardło i dlaczego system nie obsługuje więcej TPS.
Szukam pomocy, jak podejść do tego problemu, aby skonfigurować jedną usługę po drugiej. MySQL Galera, Apache, NginX i Solr działają, aby obsługiwać aplikację, wszystkie z domyślnymi ustawieniami konfiguracji. Klaster składa się z 3 nowych węzłów bare metal z 32 GB pamięci RAM i czterema procesorami XEON połączonymi przez gigabitową sieć LAN.
Z góry dziękuję za wszelkie pomocne informacje na temat systematycznego strojenia/konfiguracji systemu.
Zaproszony:
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Myślę, że testerzy klientów są dla mnie oczywistym problemem.
  • Używasz t1.micro. W większości są darmowe i nie bez powodu. Przejdź na używanie co najmniej m3. Średniej, dużej lub bardzo dużej do testowania. Po zakończeniu możesz je wyłączyć.

Komentarze z dokumentacji Amazon

Mikro-instancje T1
http://docs.aws.amazon.com/AWS ... .html
podsumowuje to dobrze.

„Praca kolczasta”

,

„Zaprojektowany do obsługi 10 żądań na minutę”

Ale do testu chcesz spróbować przeciążać serwer. Potrzebujesz setek żądań na sekundę. To trochę więcej, niż mogą zapewnić.
<ol start="2">
[*]
Klaster testowy nie jest lokalny dla klienta testowego, co powoduje dodatkowe opóźnienie. Twoja klaster znajduje się 1600 km dalej w innym kraju. To też nie pomoże. Dlatego koniecznie zwróć uwagę na punkt 3.
[/*]
[*]
Upewnij się, że klienci testowi są wielowątkowi.
[/*]
[*]
Użyj EU (Ireland) - eu-west-1, która jest lepsza do testowania punktów końcowych.
[/*]
[/list]
Anonimowy użytkownik

Anonimowy użytkownik

Potwierdzenie od:

Spróbuj usunąć części systemu, aby znaleźć szyjkę butelki. 15 serwerów testowych to okropnie dużo! powinieneś być w stanie uzyskać tysiące TPS z jednej próbki testowej. Nie prosisz HAProxy o czekanie na odpowiedź, prawda? czyli używając maxconns i funkcji queues? Jak powiedziałem, postaraj się, aby wszystko było proste, ale jeśli uważasz, że to HAProxy, opublikuj konfigurację.

Aby odpowiedzieć na pytania, Zaloguj się lub Zarejestruj się