Próbuję zebrać trochę danych z testów porównawczych, aby określić, jak dobrze moje optymalizacje do WordPressa są fair. Znalazłem tę stronę w Poradnikach o dużym ruchu, ale nie zawiera żadnych danych. Czy są jakieś narzędzia, które testują WordPress? Nie tylko to, jak dobrze radzi sobie z ruchem, ale takie rzeczy, jak buforowanie targów, gdy wykonujesz X postów godzinę i X komentarzy na minutę, a także inne normalne przypadki użycia WordPress.
Dla przypomnienia, uruchomiłem Siege i Blitz.io przeciwko instalacjom, ale to tylko jak dobrze twoja strona może buforować i obsługiwać / rozpowszechniać żądania. Jeśli to jedyny jedyny pomiar, który można konsekwentnie wytwarzać (może jedynym wymaganiem jest wymóg / s), to w porządku. Jeśli istnieją inne narzędzia, które mogą pokazać, ile wymagań / s może zostać utrzymanych przy różnym użyciu (konieczność ponownego generowania pamięci podręcznej co 10 minut będzie miało duży wpływ, jeśli zostanie podana podczas odświeżania lub wyczyści pamięć podręczną, a następnie odśwież pamięć podręczną).
źródło
Odpowiedzi:
Oblężenie .
Przetestuj zarówno rzeczywisty post / stronę (która teoretycznie uderzyłaby w pamięć podręczną strony, APC, lakier itp. Dla każdego żądania po pierwszym żądaniu), jak i na 404 (np. Losowo generowane ciągi), które wymagałyby zapytań do bazy danych na każdym trafienie.
Kilka pomocnych flag:
-b
test porównawczy (nie czekaj między żądaniami)-c N
gdzie N to liczba równoczesnych żądań-t N
gdzie N to czas (np.30S
) na uruchomienie testuJeśli jest to pomocne, ten skrypt wygeneruje losowe ciągi (404), które można wykorzystać do wygenerowania żądań do postów / stron, które wygenerują 404.
źródło
Powinieneś również sprawdzić P3 http://wordpress.org/extend/plugins/p3-profiler/
Nie wykonuje testów wydajności intensywnie obciążających ruch, ale pomoże ci pokazać, gdzie WordPress spędza czas na tworzeniu strony.
źródło
Jeśli lubisz oblężenie, pokochasz Pszczoły z karabinami maszynowymi
Pszczoły z karabinami maszynowymi rozłożą 1-N obrazów EC2, a następnie przeprowadzą atak podobny do oblężenia z wielu serwerów, lepiej symulując ruch internetowy. Wymaga konta Amazon EC2 i używa Pythona.
źródło
Możesz także spróbować skorzystać z usługi zewnętrznej, takiej jak Load Impact: http://loadimpact.com/
Wiele razy korzystaliśmy z ich bezpłatnej usługi do testowania obciążenia WordPress.
Jednak po stronie wtyczek istnieje wiele wtyczek, które wykonują różne typy raportowania na temat zużycia pamięci i procesora itp. (W odniesieniu do obciążenia strony), i chciałbym, aby była bardziej uniwersalna, która oferowała jakiś znaczący rodzaj metryka.
źródło
Prostym sposobem, jeśli używasz Apache, jest po prostu użycie kompilacji w apachebench (powinna znajdować się w
apache/bin
folderze).Zasadniczo chcesz mierzyć żądania / współbieżność z różnymi ustawieniami, wyłącz pamięć podręczną i uruchom niektóre testy, a następnie włącz APC, zoptymalizuj i porównaj dane.
To nie jest tak naprawdę pytanie związane z WordPress.
ps. Zaloguj swoje wyniki do pliku w formacie gnuplot (-g), aby je wykreślić, nie rób tego też na hoście na żywo, nie informując ich o tym.
źródło
Testowanie bazowej wydajności WP za pomocą Siege / Apachebench jest dość proste, jednak zasadniczo testuje każdą używaną wtyczkę buforującą lub (bardziej prawdopodobne) jak dobrze twój serwer jest dostrojony.
Możesz zacząć konstruować bardziej realistyczne testy za pomocą narzędzia takiego jak Selenium, które pozwala na tworzenie skryptów, tworzenie nowych postów i komentarzy, używanych w połączeniu z dość długim testem ApacheBench / Siege.
Ponadto, w zależności od charakteru witryny, zalogowani użytkownicy mogą stanowić znaczną część Twojego ruchu. Zazwyczaj zalogowani użytkownicy nie są buforowani przez buforowanie wtyczek (lub jeśli dostaną się do pamięci podręcznej, otrzymują zestaw stron w pamięci podręcznej na użytkownika), co oznacza, że bezpośrednio trafili na WP i bazę danych. Ponownie, Selenium (lub podobny) może być użyty do symulacji zalogowanego ruchu, chociaż prawdopodobnie będziesz musiał użyć selenium-grid do symulacji dużej liczby zalogowanych użytkowników (sam tego nie próbowałem, ale zawsze wydłużenie listy rzeczy do wypróbowania)
źródło