Patrzyłem na Narzędzia do testowania obciążenia serwerów HTTP? ale nie mogłem zobaczyć, jak odtworzyć własne dzienniki w żadnym z tych narzędzi. Mam błąd, który występuje tylko w przypadku niektórych operacji ładowania, których moje obecne testy JMeter i AB nie mogą odtworzyć.
Chcę po prostu dać narzędziu access_logs i pozwolić mu odtwarzać je, szybciej lub z tą samą prędkością.
apache-2.2
performance
load-testing
Stewart Robinson
źródło
źródło
thread
bibliotekithreading
lib biblioteką lib ( stackoverflow.com/questions/19558401/... )Zakładając, że wszystko, co masz w dzienniku dostępu, to żądania GET i nie masz nic przeciwko, że żądania gromadzą się na granicy rozdzielczości znaczników czasu w dziennikach, około 10 wierszy $ SCRIPTING_LANGUAGE powinno załatwić sprawę. Testy POST, pliki cookie, uwierzytelnianie HTTP i bardziej subtelne terminy są znacznie ciekawszym ćwiczeniem.
źródło
Wymagałoby to programu, takiego jak aplikacja do testowania obciążenia, który obsługuje odtwarzanie dziennika HTTP. Jedną z takich aplikacji jest HTTPerf ( https://github.com/httperf/httperf ).
Artykuł z poradnikiem znajduje się na stronie https://www.igvita.com/2008/09/30/load-testing-with-log-replay/
źródło
Zrobiłbym coś trochę inaczej. Rozumiem twoje pytanie, ale jeśli chcesz załadować serwer, możesz zajrzeć do narzędzia „ab”. Jest dostarczany z większością instalacji apache. Bieganie:
Wykona 1000 żądań, wykonując 15 żądań jednocześnie. Wiem, że nie jest to dokładnie to, czego szukasz, i spowoduje to zapytanie tylko o jeden adres, który podasz. Jeśli potrzebujesz załadować, jest to szybki i prosty sposób, aby to zrobić, i da ci potencjalnie bardzo przydatne statystyki do debugowania.
źródło
Dlaczego nie opracujesz własnego? Zdobądź dziennik; przeanalizuj to. Uzyskaj identyfikator URI. Nawiąż curl. Możesz to napisać w php i uruchomić w apache dla współbieżności.
Jeśli twoje dzienniki są w formacie gz, zrób Zcat, użyj funkcji readlog. To da adres URL. Teraz użyj phpCurl, aby trafić w adres URL. Aby uzyskać większą przepustowość, uruchom go w apache (użyj ab, aby go załadować).
źródło