Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Skrypt maksymalnie obciążający serwer
koskitos
post
Post #1





Grupa: Zarejestrowani
Postów: 149
Pomógł: 0
Dołączył: 18.04.2004
Skąd: Z nikąd

Ostrzeżenie: (30%)
XX---


Witam!
Mam prośbę, gdyż testuję mój własny serwer.

Chciałbym na nim odpalić bardzo obciążający skrypt.
Niech to będzie obciążenie maksymalne i wszystkiego (najlepiej procesora - obliczenia oraz mysql - jakies ciezkie zapytania).
Wszystko w pętlę i już.

Jakie są funkcje mocno obciążające serwer?
Podajcie najlepiej jakiś kod.

Z góry dzięki za odpowiedzi!
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cadavre
post
Post #2





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

Ostrzeżenie: (0%)
-----


Maks? Na szybko z palca:
  1. <?php
  2.  
  3. $time_start = date("H:m:s");
  4.  
  5. // baza danych
  6. $db_user = "";
  7. $db_password = "";
  8. $db_host = "localhost";
  9. $db_type = "MYISAM";
  10. mysql_connect($db_host,$db_user,$db_password);
  11. mysql_query("CREATE DATABASE `benchmark` DEFAULT CHARACTER SET utf8");
  12. mysql_select_db("benchmark");
  13.  
  14. $time_dbconnect = date("H:m:s");
  15.  
  16. $letters_array = array("a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","r","s","t","u","w","v","x","y","z","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","R","S","T","U","W","V","X","Y","Z"," ");
  17.  
  18. for ($i=0;100000>$i;$i++) {
  19. $text_one .= $letters_array[(int)rand(1,count($letters_array))];
  20. }
  21.  
  22. $time_textone = date("H:m:s");
  23.  
  24. for ($i=0;50000>$i;$i++) {
  25. $text_two .= $letters_array[(int)rand(1,count($letters_array))];
  26. }
  27.  
  28. $time_texttwo = date("H:m:s");
  29.  
  30. for ($i=0;100>$i;$i++) {
  31. mysql_query("CREATE TABLE `table$i` (
  32. `text_one` LONGTEXT NOT NULL ,
  33. `text_two` LONGTEXT NOT NULL
  34. ) TYPE = $db_type");
  35. for ($x=0;1000>$x;$x++) {
  36. mysql_query("INSERT INTO `table$i` ( `text_one`,`text_two` ) VALUES ( '$text_one','$text_two' )");
  37. }
  38. }
  39.  
  40. $time_mysql = date("H:m:s");
  41.  
  42. for ($i=0;100>$i;$i++) {
  43. $query = mysql_query("SELECT `text_one` FROM `table$i`");
  44. while ($db_data = mysql_fetch_array($query)) {
  45. ${to_save.$i} = ereg_replace($letters_array[(int)rand(1,count($letters_array))],$letters_array[(int)rand(1,count($letters_array))],$db_data['text_one']);
  46. mysql_query("UPDATE `table$i` SET `text_one`='" . ${to_save.$i} . "'");
  47. }
  48. }
  49.  
  50. $time_finish = date("H:m:s");
  51.  
  52. echo "Start:" . $time_start . "<br>";
  53. echo "DB connect:" . $time_dbconnect . "<br>";
  54. echo "Text 100k:" . $time_textone . "<br>";
  55. echo "Text 50k:" . $time_texttwo . "<br>";
  56. echo "100x double sql_query:" . $time_mysql . "<br>";
  57. echo "Queries + reg replace = finish:" . $time_finish . "<br>";
  58.  
  59. ?>
Możesz pozmieniać wartości w pętlach. Troszkę skomplikowałem składnie gdzieniegdzie i inne "dodatki' typu fetch_array czy rand'y...

Powodzenia. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) BTW Nie zapomnij zrobić .htaccessa bądź zmienić w php.ini maksymalnego czasu wykonywania skryptu.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 12:23