W jaki prosty sposób Twoja strona może stać się nawet 5x szybsza?


Większość użytkowników oczekuje od swojej strony wysokiej szybkości działania, głównie dla lepszego UX oraz… dla robotów wyszukiwarki Google. Ponieważ znaczna część stron bazuje na języku PHP – postanowiliśmy sprawdzić jak wygląda szybkość skryptów w popularnym benchmarku..


1 Przygotowanie badania

Na zwykłym koncie hostingowym w Hekko.pl umieściliśmy skrypt testujący: PHP Benchmark. Skrypt ten uruchomiliśmy następnie, ustawiając w panelu Direct Admin wersje interpretera PHP: 5.2, 5.6, 7.0 oraz 7.1

2 Zasada pomiaru

Skrypt wykonuje 4 rodzaje popularnych działań w pętli. Pętle są tak skonstruowane, aby sprawdzić działanie popularnych instrukcji, które są wykonywane praktycznie w większości zaawansowanych skryptów.

  • test_math – ten testy wykonuje obliczenia czysto matematyczne, jak wyciągnie pierwiastków, obliczanie funkcji trygonometrycznych itp. 140.000 powtórzeń.
  • test_stringmanipulation – naszym zdaniem bardzo ważny test, bazujący na operacjach na ciągach tekstowych, takich jak zmiana wielkości liter, obliczanie hasha md5, obliczanie długości ciągu, dodawanie ukośników (add_slashes) itp. 130.000 powtórzeń
  • test_loops – ten test pokazuje szybkość wykonywania prostej pętli, której zadaniem jest inkrementacja pojedynczej zmiennej, od 1 do 19.000.000
  • test_ifelse – test bazuje na powtórzeniach pętli z zagnieżdżoną strukturą instrukcji warunkowych if… else… 9.000.000 powtórzeń

Jak widać, większość w/w mechanizmów wykorzystuje się w popularnych skryptach, związanych z funkcjonowaniem stron i aplikacji internetowych. Wynik zbiorczy jest czasem wykonania wszystkich w/w testów w sekundach. Poniżej pokazujemy przykładowy wynik działania skryptu.

————————————–
| PHP BENCHMARK SCRIPT |
————————————–
Start : 2016-12-21 09:50:25
Server : www.solutia.hekko24.pl@188.116.16.109
PHP version : 7.1.0
Platform : Linux
————————————–
test_math : 0.226 sec.
test_stringmanipulation : 0.313 sec.
test_loops : 0.168 sec.
test_ifelse : 0.136 sec.
————————————–
Total time: : 0.843 sec.

3 Wyniki

Okazuje się, że wyniki są bardzo silnie uzależnione od wybranej wersji PHP. Najszybsza jest… nie – nie ma niespodzianki – wersja 7.1. Warto nadmienić, iż w chwili publikowania niniejszego materiału bardzo niewiele firm hostingowych w Polsce ją oferuje. Skrypt uruchamialiśmy trzykrotnie w każdej z analizowanych wersji PHP – wykres przedstawia wartość uśrednioną.

PHP 7.1 a szybkość działania stron - PHP Benchmark

Jak widać, zadanie, które zabrało skryptowi niemal 5 sekund w archaicznej wersji 5.2 (ale wciąż są strony, działające w oparciu o tę wersję!) – w nowej odsłonie PHP trwa krócej niż sekundę.

4 Włączamy PHP 7.1

W wypadku hostingu w Hekko, aby zmienić wersję PHP na swoim koncie, wystarczy zalogować się do Direct Admina i w dolnej części wybrać >Ustawienia globalne PHP<. To prosta czynność, w wyniku której możesz zmienić ustawienie dla swojego całego konta. W panelu Direct Admin możliwe są także ustawienia per domena, ale prawdopodobnie, kiedy poczujesz korzyści z PHP 7.1 nie będziesz chciał już korzystać ze starszych wersji interpretera 🙂 Zmiana ustawień PHP w Direct Adminie
Jak widać, przełączenie wersji PHP na nowszą jest bardzo proste, a w razie, gdyby okazało się, że strona nie działa prawidłowo (istnieje niewielkie prawdopodobieństwo, że część bardzo starych stron nie będzie działać prawidłowo w najnowszych środowiskach PHP) – jednym kliknięciem przywracasz ustawienia początkowe.

Jak zaoszczędzić 50% na hostingu?

H50Y17BGOW

Podaj ten kod zamawiając nowe konto hostingowe w Hekko.pl, a w pierwszym roku dostaniesz aż 50% rabatu od cen wskazanych na stronie. Testuj bezpłatnie przez 14 dni. Polecany przez 95% użytkowników niezależnego forum webhostingtalk.pl

Dobre? To podziel się!Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Buffer this page
 
  • Artur Pajkert

    Aktualnie PHP 7.1 jest już dostępne na wszystkich serwerach hostingu współdzielonego.

    • Moneetor

      Widzę,że na obrazku jest już możliwość wybrania, które moduły są użyciu. Czy to ma jakiś znaczący wpływ na wydajność PHP?