![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 281 Pomógł: 3 Dołączył: 8.06.2009 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Witajcie, mam kilka projektów napisanych w codeigniterze, phalconie i czystym php-ie wszystkie działają na apache oraz ubuntu server. Chciałbym przeprowadzić kilka testów wydajności, jak obciążaja serwer ile trwa wykonanie pojedyńczego zapytania itp. przy okazji przetestowałbym jak opcache wbudowane w php sobie radzi z porawną wydajniści. Nigdy tego nie robiłem i tu pojawia się pytanie jakie narzędzia do polecacie ? jak się za to zabrać ?
-------------------- Cokolwiek zostanie upuszczone na uklad elektroniczny, spadnie zawsze tam gdzie wyrzadzi najwiecej szkody.
|
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 332 Pomógł: 10 Dołączył: 13.03.2014 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
W codeigniterze masz specjalną klase benchmarking LINK.
W czystym pehapie masz microtime link stwórz sobię 2 funkcje. W jeden twórz np. zmienną start i przypisz wartość zwracaną przez microtime(). W 2 np. zmienną stop i do niej przypisz wartość microtime() następnie I będziesz miał podany czas wykonywania konkretnych elementów. W phalconie nie wiem czy jest jakas klasa do tego. Musisz popatrzeć w manualu. Jeśli nie to zrób tak samo jak w przypadku czystego pehapa. |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Zainteresuj się narzędziami typu JMeter czy Apache Benchmark (ab)
|
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 281 Pomógł: 3 Dołączył: 8.06.2009 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Dziękuję Panowie za odpowiedzi, zainstalowałem u siebie na serwerze wirtualnym Apache Benchmark ale chyba coś jest nie tak...
z włączonym opcache pobrałem sobie 3 najpopularniejsze frameworki phalcon / laravel / codeigniter (nic w nich nie dodawałem) wyświetliłem po prostu pierwszą stronę Hello oto efekty: ---CODEIGNITER--- Server Software: Apache/2.4.7 Server Hostname: localhost Server Port: 80 Document Path: /speed/codeigniter/ Document Length: 1925 bytes Concurrency Level: 5 Time taken for tests: 139.432 seconds Complete requests: 1000 Failed requests: 0 Total transferred: 2137000 bytes HTML transferred: 1925000 bytes Requests per second: 7.17 [#/sec] (mean) Time per request: 697.161 [ms] (mean) Time per request: 139.432 [ms] (mean, across all concurrent requests) Transfer rate: 14.97 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 1 0.7 0 13 Processing: 406 695 228.2 655 2075 Waiting: 400 685 226.4 645 2053 Total: 407 696 228.4 656 2079 WARNING: The median and mean for the initial connection time are not within a normal deviation These results are probably not that reliable. Percentage of the requests served within a certain time (ms) 50% 656 66% 714 75% 762 80% 805 90% 967 95% 1099 98% 1352 99% 1744 100% 2079 (longest request) ---PHALCON--- This is ApacheBench, Version 2.3 <$Revision: 1528965 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking localhost (be patient) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed 600 requests Completed 700 requests Completed 800 requests Completed 900 requests Completed 1000 requests Finished 1000 requests Server Software: Apache/2.4.7 Server Hostname: localhost Server Port: 80 Document Path: /speed/phalcon/ Document Length: 204 bytes Concurrency Level: 5 Time taken for tests: 154.864 seconds Complete requests: 1000 Failed requests: 0 Total transferred: 430000 bytes HTML transferred: 204000 bytes Requests per second: 6.46 [#/sec] (mean) Time per request: 774.319 [ms] (mean) Time per request: 154.864 [ms] (mean, across all concurrent requests) Transfer rate: 2.71 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 1 0.5 0 9 Processing: 262 773 275.1 741 1576 Waiting: 260 763 274.2 729 1568 Total: 262 773 275.1 741 1577 ERROR: The median and mean for the initial connection time are more than twice the standard deviation apart. These results are NOT reliable. Percentage of the requests served within a certain time (ms) 50% 741 66% 870 75% 976 80% 1081 90% 1176 95% 1233 98% 1330 99% 1446 100% 1577 (longest request) ---LARAVEL--- This is ApacheBench, Version 2.3 <$Revision: 1528965 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking localhost (be patient) Completed 100 requests Completed 200 requests Completed 300 requests Completed 400 requests Completed 500 requests Completed 600 requests Completed 700 requests Completed 800 requests Completed 900 requests Completed 1000 requests Finished 1000 requests Server Software: Apache/2.4.7 Server Hostname: localhost Server Port: 80 Document Path: /laravel/public Document Length: 314 bytes Concurrency Level: 5 Time taken for tests: 12.025 seconds Complete requests: 1000 Failed requests: 0 Non-2xx responses: 1000 Total transferred: 545000 bytes HTML transferred: 314000 bytes Requests per second: 83.16 [#/sec] (mean) Time per request: 60.124 [ms] (mean) Time per request: 12.025 [ms] (mean, across all concurrent requests) Transfer rate: 44.26 [Kbytes/sec] received Connection Times (ms) min mean[+/-sd] median max Connect: 0 1 0.7 0 10 Processing: 8 59 23.5 56 165 Waiting: 4 43 23.0 40 155 Total: 9 60 23.6 57 166 WARNING: The median and mean for the initial connection time are not within a normal deviation These results are probably not that reliable. Percentage of the requests served within a certain time (ms) 50% 57 66% 67 75% 74 80% 78 90% 91 95% 103 98% 115 99% 127 100% 166 (longest request) Oznacza to że phalcon najszybszy framework jest najwolniejszy, potem mamy codeignitera a na samym przodzie laravel który jest od nich 12 razy szybszy ? absurd... Ten post edytował marcus753 9.03.2015, 15:37:35 -------------------- Cokolwiek zostanie upuszczone na uklad elektroniczny, spadnie zawsze tam gdzie wyrzadzi najwiecej szkody.
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 30 Dołączył: 22.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
3 najpopularniejsze frameworki --hmm
Patrzyłeś jakie moduły jaki freamework załadowuje? Porównywałeś wywołanie strony z wyrenderowanym już widokiem do cache i odwrotnie? Patrzyłeś czy serwer jest skonfigurowany odpowiednio pod każdego z nich? Takie odpalenie nic nie wnosi do ogółu testowania, ponieważ to tylko jeden z miliona przypadków ![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Przede wszystkim testowanie strony typu "Hello World!" jest kompletnie bez sensu - nie daje żadnych miarodajnych wyników. Dodatkowo każde z narzędzi przed testem powinno być odpowiednio zoptymalizowane.
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 281 Pomógł: 3 Dołączył: 8.06.2009 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Wstyd się przyznać ale popełniłem szkolny błąd w laravelu zrobiłem odwołanie do głównego folderu zamiast do folderu public...
Po wprowadzonych zmianach i testach na innym mocniejszym komp. wyświetlenie strony hello world zajmuje: laravel ~1000ms / codeigniter ~300ms / phalcon ~150ms / Czy to ma sens ? wielkiego nie ma ale pokazuje przynajmniej jak sprawny jest dispatcher / system cache szablonów... Jak będę miał chwilę czasu przez weekend zrobię porównanie dla zapisania a następnie odczytania 1000 przykładowych rekordów do bazy - zobaczymy ile wtedy potrwa wykonanie skryptu... -------------------- Cokolwiek zostanie upuszczone na uklad elektroniczny, spadnie zawsze tam gdzie wyrzadzi najwiecej szkody.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 655 Pomógł: 73 Dołączył: 2.05.2014 Ostrzeżenie: (0%) ![]() ![]() |
1000 ma w laravel? Cos jest nie tak. Mi gotowa aplikacje laravel renderuje w mniejszym czasie. Nawet wykonywanie cache nie powinno tyle zajmować. Cos robisz zle.. Albo nie wiem hmm.
-------------------- Overwatch24 - najbardziej zaawansowany Polski portal Overwatch od fanów dla fanów.
Fachowo.co Behance.net/fachowo |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 675 Pomógł: 58 Dołączył: 17.12.2013 Ostrzeżenie: (10%) ![]() ![]() |
Z autopsji, Yii2 przy hello world:
w pracy: 50ms w domu: 200ms W pracy mam maca mini z 2012 2x2.3 ghz + 8gb ddr3, w domu 4x4ghz + 8gb ddr3 ... także wyniki na sprzęcie który nie jest regularnie sprawdzany pod kątem uszkodzeń są z dupy wzięte i nie sugerowałbym się nimi ani trochę jeśli chodzi o wybór narzędzia pod konkretny projekt. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 04:22 |