W artykule:
Ważne jest, aby wiedzieć, jak dobrze Twoja witryna WordPress może obsługiwać duże ilości ruchu w przypadku nagłego wzrostu ruchu. Dzięki Tsung możesz bezpłatnie przetestować swoją witrynę, sprawdzić limity serwera z pierwszej ręki i wykorzystać dane do stworzenia planu skalowania witryny.
Tsung (dawniej IDX-Tsunami) to rozproszone narzędzie do testowania obciążenia open source, które działa na większości serwerów i może testować wiele platform, w tym HTTP i MySQL. Możesz uruchomić go przez SSH i symuluje nagły duży ruch wysyłany do twojej witryny z jednej maszyny, chociaż możesz również tworzyć klastry.
Tsung został opracowany w Erlang i chociaż jest używany do testowania warunków skrajnych witryny, rzeczywiste procesy, które wysyła, są lekkie, dzięki czemu możesz zobaczyć, ile Twoja strona może obsłużyć bez jej łamania lub awarii Tsung.
Niestety, oficjalna dokumentacja dla Tsung nie jest całkowicie aktualna, więc w tym poście pokażę Ci, jak zainstalować Tsung za pomocą Wget. Omówię również, jak generować raporty dla każdego przeprowadzonego testu, abyś mógł analizować dane generowane przez Tsung po pomyślnym teście obciążenia.
Co To jest Tsung?
Rozwój rozproszonego narzędzia do testowania obciążenia rozpoczął się w 2001 roku przez Nicolasa Niclausse’ a, ale miał być używany wewnętrznie przez IDEALX (obecnie OpenTrust) i dopiero kilka miesięcy później przekształcił się w projekt open source.
Tsung symuluje prawdziwych użytkowników na serwerze i może testować wiele platform, w tym serwery HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP i Jabber / XMPP.
Może być używany do testowania witryny i wysyłania testów wysokiego obciążenia od 12 000 do 10 milionów jednoczesnych użytkowników.
W rzeczywistości te liczby nie zostały wyciągnięte znikąd-były z powodzeniem stosowane w ten sposób w przeszłości.
Tsung jest obecnie narzędziem o dużej sile przemysłowej, które było używane przez wiele renomowanych firm i instytucji, w tym Oracle, dla platformy oprogramowania Moodle i francuskiego Ministerstwa Finansów (Direction générale des Impôts lub DGI).
Możesz uruchomić narzędzie przez SSH na klientach takich jak Terminal dla Mac OS X lub PuTTY Dla Windows. Odpal swojego ulubionego klienta SSH, aby od razu zacząć.
Wymagania Serwera
Istnieje kilka wymagań potrzebnych do uruchomienia Tsung, więc ważne jest, aby były one zainstalowane i zadbane w pierwszej kolejności. Tsung może być zainstalowany na serwerach Linux, Solaris, BSD, Win32 i Mac OS X i musisz mieć dostęp root do serwera, aby zainstalować i uruchomić Tsung.
Możesz użyć sudo do uruchamiania poleceń jako użytkownik root i możesz sprawdzić oficjalną dokumentację tych opcji, aby odwołać się do ich instalacji:
- Sudo – Strona główna Sudo i Linux 101: Wprowadzenie do sudo
Musisz również mieć zainstalowaną najnowszą wersję PHP na swoim serwerze. Możesz sprawdzić wprowadzenie oraz przewodniki instalacji i konfiguracji, aby dowiedzieć się, jak je zainstalować.
Po zalogowaniu się do roota przez SSH, możesz sprawdzić, którą wersję PHP używasz, wpisując w php-v
.
Instalacja Tsung i jego zależności
Teraz możesz zacząć instalować programy, które są niezbędne do uruchomienia Tsung. Wiele z nich jest już zapakowanych do Tsung, ale jest kilka innych, które musisz upewnić się, że również je zainstalowałeś.
Chociaż możesz zainstalować Tsung i jego zależności na wiele sposobów, w zależności od serwera, proces instalacji jest omówiony tutaj za pomocą Wget. Jeśli nie masz jeszcze zainstalowanego Wget na swoim serwerze, możesz zapoznać się z przewodnikiem Wprowadzenie do GNU Wget.
Zacznij od zainstalowania języka programowania Erlang. Możesz pobrać link do najnowszej wersji na oficjalnej stronie pobierania Erlanga i zainstalować ją za pomocą Wget:
Należy pamiętać, że należy upewnić się, że instalujesz najnowszą wersję Erlang. Zastąp adres URL w tym przykładzie adresem URL najbardziej aktualnej wersji ze strony pobierania Erlanga.
Następnie rozpakuj skompresowany plik, ale upewnij się, że zastąpisz otp_src_18.2.1.smoła.gz
z nazwą pliku, z którym dzwoniłeś wget
. Może to nie być to samo, jeśli były aktualizacje od czasu napisania tego artykułu.
Przejdź do katalogu, który właśnie utworzyłeś, wpisując to polecenie, ale nie zapomnij zastąpić otp_src_18.2.1
w razie potrzeby:
Teraz nadszedł czas, aby skonfigurować, zbudować i zainstalować Erlang teraz, gdy jest nieskompresowany i na serwerze. Możesz użyć następującego polecenia i nie musisz niczego zmieniać:
Ten ostatni krok może potrwać kilka minut, więc w międzyczasie możesz napić się wody lub kawy. Po zakończeniu możesz zainstalować Perl5 i Gnuplot w ten sam sposób, jeśli jeszcze ich nie zainstalowałeś. Są one używane do tworzenia wykresów tekstowych i obrazowych oraz danych po przeprowadzeniu testu warunków skrajnych.
Możesz również znaleźć plik do pobrania Gnuplot na Sourceforge, ale okazało się, że instalacja była nieco trudniejsza, tylko dlatego, że nie zwracałem wystarczającej uwagi.
Podczas korzystania wget
aby dodać skompresowany plik z SourceForge na serwer, w końcu zauważyłem, że nie mogę rozpakować pliku za pomocą tar xvzf gnuplot-5.0.3
ponieważ skompresowany plik nie tak się nazywał. Zamiast tego musiałem rozpakować go za pomocą tego polecenia:
Dopiero wtedy udało mi się przejść do katalogu z bardziej oczywistą nazwą:
Następnie mógłbym zakończyć konfigurację i instalację Gnuplot, tak jak zwykle w przypadku większości innych programów.
Dobrym pomysłem jest zrobienie tego, czego nie zrobiłem na początku, czyli zwrócenie uwagi na szczegóły, takie jak nazwy plików, ponieważ może to być powód, dla którego pojawiają się tajemnicze błędy, które w rzeczywistości mają łatwe poprawki.
Ostatnim krokiem jest zainstalowanie Tsung i możesz uzyskać adres URL najnowszej wersji ze strony pobierania Tsung. Gdy już masz link, możesz użyć wget
aby rozpakować i zainstalować go na swoim serwerze, tak jak opisano powyżej dla Erlanga.
Przeprowadzenie testu warunków skrajnych
Po pomyślnym zainstalowaniu Tsung i jego zależności możesz rozpocząć pierwszy test warunków skrajnych. Zwykle wymaga to utworzenia pliku XML ze specyfikacją typu testu, który chcesz uruchomić, ale Tsung jest fabrycznie załadowany z przykładowymi plikami, które są świetne w użyciu.
Możesz znaleźć te pliki, przechodząc do wtórnego tsung katalog, następnie do przykłady folder wprowadzając to polecenie do klienta SSH:
Teraz powinieneś być w / tsung / przykłady/ katalog z katalogu głównego serwera, ale nie będzie można zobaczyć żadnych plików na liście, dopóki nie wejdziesz ls
aby wyświetlić listę wszystkich plików w tym katalogu. Gdy wszystkie zostaną wymienione, możesz zdecydować, który skrypt chcesz uruchomić.
Nie wszystkie wymienione przykładowe pliki będą istotne dla testów warunków skrajnych witryny WordPress, więc uważaj, aby nie wybrać jednego z nich.
Jeśli nie jesteś do końca pewien, który z nich wypróbować, możesz zacząć od http_simple.xml
plik. Jest to świetny podstawowy test do uruchomienia dla Twojej witryny WordPress.
Gdy zdecydujesz się na plik XML, możesz uruchomić test warunków skrajnych. Po prostu upewnij się, że twój klient SSH jest skierowany do katalogu, w którym znajduje się Twój plik, przed wejściem polecenia, aby rozpocząć test.
Postanowiłem skorzystać z podstawowego http_simple.xml
jest to polecenie, którego użyłbym, aby rozpocząć test, chociaż można je zastąpić plikiem, którego chcesz użyć:
Powinien pojawić się komunikat “Starting Tsung”, a następnie kolejna linia z komunikatem, który wygląda podobnie do tej:
Katalog logów to: / root/.tsung/log / 20160311-1644
W tym miejscu przechowywane są dane dotyczące wyników testu warunków skrajnych. Zanotuj to, ponieważ potrzebujesz go do generowania i przeglądania raportu. Sam plik dziennika jest zapisywany, aby pokazać datę i godzinę testu warunków skrajnych, więc łatwiej jest śledzić je wszystkie. Zaczyna się od liczbowego roku, miesiąca i dnia, po którym następuje myślnik, a następnie czas w formacie 24-godzinnym.
Po zakończeniu testu warunków skrajnych powinieneś wiedzieć, ponieważ możesz wpisać inną komendę.
Generowanie raportu
Po zakończeniu testu warunków skrajnych możesz wyświetlić raport o tym, jak poszło, ale najpierw musisz go wygenerować. Można również wybrać, aby wygenerować jeden jak test jest zakończony, dzięki czemu można monitorować postęp, jeśli chcesz.
Najpierw wróć do katalogu głównego wpisując cd ~
, następnie przejdź do katalogu z logiem. Zgodnie z powyższym przykładem, oto rodzaj polecenia, które można wprowadzić, aby się tam dostać:
Jeśli nie jesteś pewien, jaka jest bezpośrednia ścieżka do korzenia, możesz zastąpić / root
w powyższym przykładzie z ~
interpunkcja, aby uzyskać ten sam wynik.
Aby wygenerować raport, wpisz następujące polecenie:
Twoje raporty powinny zostać utworzone i możesz je przeglądać w ścieżce, którą wcześniej zauważyłeś. Po wejściu do tego katalogu możesz wpisać ls
polecenie, aby wyświetlić dostępne pliki raportów.
Można je przeglądać za pomocą przeglądarki SSH, takiej jak łącza lub inne przeglądarki oparte na serwerze z włączoną grafiką. Linki działają na większości serwerów i możesz dowiedzieć się, jak pobierać i instalować linki, sprawdzając Przewodnik pobierania linków Twibright Lab.
Po skonfigurowaniu i zainstalowaniu oraz włączeniu Grafiki możesz przejść do katalogu, w którym przechowywane są logi, jak pokazano powyżej. Gdy już tam będziesz, uruchom polecenie łącza dla strony raportu:
Strona powinna być wyświetlana podobnie do zwykłej strony przeglądarki i powinieneś być w stanie wyświetlić raport.
Raport jest podzielony na sekcje, aby pokazać informacje na temat symulowanego ruchu:
wniosek
– Czas odpowiedzi na każde zapytaniestrona
– Grupa zapytań i czas odpowiedzi każdego z nichpołącz
– Czas trwania nawiązanego połączeniaPołącz ponownie
– Ilość razy doszło do ponownego połączeniarozmiar_rcv
– Rozmiar odpowiedzi w bajtachsize_sent
– Wielkość żądań w bajtachsesja
– Czas trwania symulowanej sesji użytkownikaużytkownicy
– Liczba jednocześnie symulowanych użytkowników, którzy rozpoczęli sesję, ale nie zakończylipodłączony
– Liczba użytkowników z otwartym połączeniemśredni czas reakcji
– Średni czas reakcji, który jest obliczany co 10 sekund, a następnie resetuje
Może być ważne, aby pamiętać, że ponieważ średni czas reakcji jest resetowany co 10 sekund, prawdopodobnie będą różne średnie w różnych punktach podczas testu. Dlatego obliczany jest najniższy, najwyższy i ogólny średni czas reakcji, dzięki czemu możesz zobaczyć, jakie były Twoje wysokie i niskie punkty wraz z ogólnym wynikiem.
Jedną z najważniejszych sekcji, na które należy zwrócić uwagę podczas przeprowadzania testu warunków skrajnych w witrynie, jest Kod zwrotny HTTP sekcji. Jest to tylko coś, na co powinieneś uważać, jeśli uruchamiasz test HTTP.
W takich przypadkach, jeśli sekcja kodu pokazuje coś wyższego niż w zakresie 200-300 i sięga do zakresu 400-500, Twój serwer wymaga dużych zmian lub występują błędy.
Być może w teście było zbyt wiele jednoczesnych żądań, co oznacza, że twój serwer nie jest skalowany lub występują błędy na twojej stronie, serwerze lub w pliku XML użytym do testu. Ogólnie rzecz biorąc, jest to świetny wskaźnik udanego – lub nie tak udanego – testu Twojej witryny i serwera.
Możesz również utworzyć własne pliki XML, aby w pełni dostosować test, jeśli chcesz, a szczegóły dotyczące tego, jak to zrobić, znajdują się w oficjalnej dokumentacji Tsung.
Zakończenie testu warunków skrajnych
Testowanie warunków skrajnych witryny i serwera to świetny sposób, aby dowiedzieć się, czy można wprowadzić ulepszenia i czy witryna jest dobrze skonfigurowana pod kątem skalowalności. Dzięki Tsung możesz nie tylko uruchamiać tego rodzaju testy za darmo, ale także generować szczegółowe raporty, dzięki czemu możesz zobaczyć, jak Twój serwer radzi sobie z nagłym skokiem ruchu.
Możesz również uruchomić tsung-h
polecenie, aby uzyskać przydatne listy dostępnych opcji do uruchomienia testu warunków skrajnych tsung. Jeśli potrzebujesz więcej pomocy i chcesz zadać pytanie, istnieje wiele firm oferujących wsparcie, A pełną listę znajdziesz na stronie Pomocy Technicznej w witrynie Tsung.
Możesz również sprawdzić śledzenie błędów na GitHub, aby zgłosić problem, jeśli go znajdziesz, chociaż może być ważne, aby pamiętać, że możesz nie uzyskać odpowiedniego wsparcia, jeśli masz problem z używaniem Tsung, a nie jeśli zgłaszałeś błąd.
Tagi: