Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 24.07.2007 Ostrzeżenie: (0%)
|
Witam,
w jaki sposob dokonac sztucznego obciazenia bazy danych. Chodzi o to abym mogl zobaczyc jak zareguje(jak dlugo bedize wykonywane zapytanie) serv przy np. 1000 UQ uzytkownikach |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 121 Pomógł: 15 Dołączył: 19.07.2007 Ostrzeżenie: (0%)
|
Na pewno nie zrobisz tego uzywajac jezyka skryptowego bo potrzebujesz stworzyc wiele watkow (wykonywac operacje rownolegle).
Wymyslilem na szybko trzy sposoby: 1) najprostszy: (C/C++ i zewnetrzny program) napisac prosciutki program w C/C++ ktory tworzy np. 1000 watkow , a kazdy z nich uruchamia wget z adresem strony internetowej w ktorej chcesz sprawdzic obciazenie. Ten test bylby oczywiscie najmniej wiarygodny, bo gdy jeden watek wykonalby juz swoje zapytania to reszta zapytan bylaby cacheowana 2) srednio trudny: (C/C++ i PHP) napisac prosciutki program w C/C++ ktory tworzy np. 1000 watkow, a kazdy uruchamia skrypt PHP wykonujacy np. 20 losowo wybranych zapytan do bazy danych z wczesniej zdefiniowanej listy. Raczej nie polecalbym tego sposobu gdyz nie wiem czy przypadkiem uruchomienie 1000 parserow PHP nie spowodowaloby wyczerpania zasobow na Twoim kompie (samobojczy atak DoS (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ) 3) najtrudniejszy: (sam C/C++) napisac program w C/C++ ktory tworzy np. 1000 watkow, kazdy z watkow laczy sie z baza danych i wykonuje np. 20 losowo wybranych zapytan z wczesniej zdefiniowanej listy Oczywiscie w 2 i 3 przypadku kazdo zapytanie przynajmniej po czesci powinno byc zmienne (rozne wartosci w klauzuli WHERE, rozna liczba kolumn w klauzuli SELECT, rozne wartosci sortowania, rozne wartosci przy klauzuli LIMIT). Wszystke te testy najlepiej uruchamiac na hoscie na ktorym masz swoja stronke www lub na hoscie z bardzo szybkim laczem. Ten post edytował osiris 6.08.2007, 09:24:08 |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 116 Pomógł: 0 Dołączył: 20.12.2005 Skąd: Łódź Ostrzeżenie: (0%)
|
Zamiast pisać program w c/c++ możesz użyć apache bench do wywoływania jakiegoś skryptu robiącego losowe zapytania do bazy.
Apache bench potrafi wykonywać jednocześnie kilka requestów. |
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 7 Dołączył: 5.11.2005 Ostrzeżenie: (0%)
|
Jeśli chcesz przetestować cały site lub jego fragment możesz użyć MS Web Application Stress Tool, który ma całkiem spore możliwości. (więcej na temat programu znajdziesz na tej stronie)
|
|
|
|
![]() ![]() |
|
Aktualny czas: 20.12.2025 - 18:05 |