Wiele osób uważa, że Internet jest największym osiągnięciem ludzkości. Nad tą kwestią można polemizować, lecz jedno jest pewne. Dynamika jego rozwoju jest, mówiąc delikatnie, oszałamiająca. To, co dziś jest na szczycie popularności i ogólnosieciowego trendu, potrafi odejść do lamusa w zaledwie kilka tygodni. Nie ma tu czasu na przerwę. Gdy stoisz – cofasz się – przegrywasz. Gdy idziesz zbyt wolno – przegrywasz! Co ciekawe, nie tyczy się to jedynie użytkowników Internetu, lecz także dostawców wszelkich rozwiązań technologicznych, na którym tenże się opiera.
Hosting ma tutaj szczególne miejsce, ponieważ jest to de facto jeden z filarów istnienia Internetu, w jego najbardziej popularnej formie, czyli wielkiej sieci stron internetowych dostarczających praktycznie nieograniczoną zawartość na wszystkie możliwe tematy. Dziś chcielibyśmy przyjrzeć się szczególnej jego odmianie, a mianowicie hostingowi w chmurze.
Czym jest hosting w chmurze?
Hosting w chmurze działa w oparciu o zewnętrzne serwery, które są nie tylko w pełni bezpieczne, ale również gwarantują wysoki transfer danych i brak jakichkolwiek problemów technicznych.
Standardowe hostingi borykają się z przestojami na maszynach, które na przykład dla sklepu internetowego są wręcz niedopuszczalne. Tego typu problemy nie dotyczą hostingu w chmurze, a co za tym idzie może on pracować nawet pod bardzo dużym obciążeniem, bez względu na to, jaka ilość kont funkcjonuje w danym momencie.
Dodatkowo w cenie pakietów otrzymujemy gotowe systemy operacyjne w najnowszej wersji. Ubuntu, Debian czy Fedora to tylko przykłady systemów działających w chmurze. Taka technologia znacznie ułatwia zbudowanie strony internetowej, a także współpracę większych zespołów.
Hosting w chmurze jest gotowy do działania już po kilku chwilach od zamówienia. Na takie rozwiązania stawiają przede wszystkim przedsiębiorcy poszukujący nowych technologii, które zapewnią najwydajniejszą możliwą pracę.
(Nie)wielki test – o co chodzi?
Dziś chcielibyśmy wziąć pod lupę największych dostawców technologi chmurowych, lecz przetestować oferowane przez nich usługi w dość ludzki sposób, czyli jak prezentuje się wydajność stron internetowych umieszczonych przez nas właśnie na hostingu chmurowym. Zamówiliśmy usługi u pięciu wiodących dostawców:
- Microsoft Azure
- Amazon Web Services
- Oracle Cloud Infrastructure
- Hetzner Cloud
- Google Cloud Platform
Na każdym serwerze umieściliśmy WordPressa w wersji 5.2.2, który wypełniony był przykładowymi treściami, aby cała strona była ogólnie “cięższa”.
Do testowania wykorzystaliśmy trzy narzędzia – GTMetrix, PHPBenchmark i Google Page Insights:
- GTMetrix, testując daną witrynę, dostarcza informacji o jej optymalizacji, a także szybkości ładowania. Podczas testów najistotniejsze dla nas były parametry TTFB (Time To First Byte), czyli czas reakcji serwera, a także Fully Loaded, czyli czas do pełnego załadowania witryny. Podczas uruchamiania testów wskazywaliśmy, aby były one wykonywane z Londynu.
- PHPBenchmark (dostępny do pobrania pod adresem php-benchmark-script.com) jest skryptem napisanym w celu pomiaru szybkości wykonywania funkcji PHP na danej maszynie. Wykonując kilkukrotnie nieskomplikowane funkcje łańcuchowe oraz matematyczne, prowadzi pomiar czasu wykonywania kodu PHP. Pozwala to na określenie wydajności procesora serwera, jego dysku twardego oraz bazy danych. Testy przeprowadziliśmy na wersji PHP 7.4.
- PageSpeed Insights to darmowe narzędzie od Google dokonujące pomiaru czasu ładowania dowolnej witryny. Wynik sumaryczny jest przedstawiany w stupunktowej skali (0 – 100), gdzie zakres 0-49 (czerwony) określany jest jako wynik słaby, 50-89 (żółty) – wymagający poprawek, a 90-100 (zielony) – gwarantujący, że witryna jest wystarczająco wydajna do prawidłowego funkcjonowania.
Wyniki
Poniżej prezentujemy wyniki poszczególnych testów. Każdy wynik zawiera link do screenshota z wyniku konkretnego pomiaru. Ponadto udostępniamy także odnośniki do witryn, postawionych u konkretnych dostawców chmurowych, aby każdy mógł przeprowadzić test samodzielnie.
GTMetrix
Miejsce | Dowstawca | GTMetrix Fully Loaded Time (ms) | Link | Screen w wynikiem |
1 |
Google Cloud | 821 | https://google-wptesty2022.pl | https://prnt.sc/T5xUDfzQBFOO |
2 |
AWS |
861 |
||
3 |
Oracle |
924 |
||
4 |
Hetzner |
1000 |
||
5 |
Microsoft Azure |
1100 |
PHP Benchmark
Dla każdego dostawcy dokonaliśmy dwie próby kontrolne i wyciagnęliśmy średni czas poszczególnych operacji.
Miejsce | Dostawca | Czas (s) | Średni czas (s) | Link |
1 | AWS | 0,0829 | 0,56295 | https://aws-wptesty2022.pl/bench.php |
1,043 | ||||
2 | Microsoft Azure | 0,724 | 0,7305 | https://azure-wptesty2022.pl/bench.php |
0,737 | ||||
3 | Google Cloud | 0,744 | 0,7455 | https://google-wptesty2022.pl/bench.php |
0,747 | ||||
4 | Oracle | 0,877 | 0,8765 | https://oracle-wptesty2022.pl/bench.php |
0,876 | ||||
5 | Hetzner | 1,211 | 1,2445 | https://hetzner-wptesty2022.pl/bench.php |
1,278 |
PageSpeed Insights
Przy tym teście skupiliśmy się na desktopowej (stacjonarnej) wersji witryn.
Miejsce | Dostawca | Ocena wydajności (Stacjonarny) | Link | Screen w wynikiem |
1 | AWS | 90 | https://aws-wptesty2022.pl | https://nimb.ws/N7vjxE |
2 | Oracle | 89 | https://oracle-wptesty2022.pl | https://prnt.sc/oBexRkXgGR5C |
3 | Google Cloud | 89 | https://google-wptesty2022.pl | https://nimb.ws/pA4EPR |
4 | Microsoft Azure | 88 | https://azure-wptesty2022.pl | https://nimb.ws/OYz1ec |
5 | Hetzner | 72 | https://hetzner-wptesty2022.pl | https://nimb.ws/QhLSxa |
Podsumowanie
Istotną kwestią, którą należy podkreślić podsumowując zebrane wyniki jest to, iż nie należy traktować ich jako absolutną wyrocznię. Trzeba liczyć się z różnymi zmiennymi czynnikami, np. pora dnia, w której wykonany został dany test, “ciężkość” testowanej witryny, czy wersja oprogramowania, które wykorzystujemy do testów (w naszym wypadku był to WordPress).
Naszym celem było zaprezentowanie jak identyczna witryna osiąga różne wyniki w zależności od rozwiązania chmurowego, na jakim się znajduje. Ostateczny wybór jest zawsze kwestią indywidualną, uwzględniającą potrzeby danego klienta.
Będziemy kontynuować nasze testy i informować Was o wynikach.