przegląd PHP
PHP jest językiem skryptowym po stronie serwera używanym do tworzenia stron internetowych. Rasmus Lerdorf opracował pierwszą wersję w 1995 roku.
początkowo Skrót PHP oznaczał Personal Home Page. Po wydaniu wersji 3, PHP otrzymało rekurencyjny akronim ” PHP: Hypertext Preprocessor.”
PHP 4 był określany jako Zend engine, kiedy Zend engine został wprowadzony. Został nazwany na cześć jego twórców Andi Gutmans i Zeeva Suraskiego.
kompilator in-memory & model executora drastycznie poprawił swoją wydajność. Umożliwiał również użytkownikom tworzenie dynamicznych aplikacji internetowych.
PHP w wersji 5 zostało wyposażone w programowanie obiektowe. Wersje PHP 7.0 oferowały dalsze ulepszenia silnika Zend.
najnowsza wersja PHP 8 oferuje kilka godnych uwagi funkcji. Jest wyposażony w kompilator JIT dla poprawy wydajności.
kilka ciekawostek o PHP
- jest to język interpretowany i nie wymaga kompilatora.
- obsługuje bazy danych takie jak MySQL, PostgreSQL, & Oracle.
- kod PHP jest wykonywany bezpośrednio na serwerze.
- jest to język open-source i Dostępny dla wszystkich.
- jest popularny, ponieważ około 79% serwerów internetowych jest napisanych w PHP.
- niektóre popularne aplikacje internetowe wykorzystujące PHP to WordPress, Wikipedia & Yahoo.
1. Użyj natywnych funkcji PHP
zamiast pisać funkcje ręcznie, użyj wbudowanych funkcji PHP. Pomaga szybciej pisać kod & uniknąć problemów z wydajnością.
PHP ma bibliotekę ponad 1000 wbudowanych funkcji. Są one predefiniowane i wywoływane bezpośrednio do wykonania określonego zadania.
możesz użyć specjalnych funkcji PHP & składni zamiast funkcji ogólnych dla wydajnego przetwarzania.
dostajesz szeroki zakres funkcji PHP & lista metod. Możesz ich użyć, aby ukończyć dowolny cel.
2. Włącz OPCache na serwerze PHP
Kompilacja konwertuje czytelny dla człowieka kod źródłowy na język maszynowy (opcode).
opcode jest odczytywany przez serwer, dzięki czemu może przetwarzać żądania. Bez opcode każde żądanie musi zostać skompilowane, co nie jest szybkie.
przetwarzanie skryptów PHP składa się z czterech etapów:
- Analiza leksykalna (lexing)
- Analiza składniowa (parsing)
- Kompilacja
- wykonanie
OPcache poprawia wydajność PHP, przechowując wstępnie skompilowane skrypty w pamięci współdzielonej. W ten sposób PHP nie musi ładować & analizować skryptów na każde żądanie.
w OPcache kroki są usuwane, dzięki czemu można bezpośrednio uruchomić lub uruchomić aplikację.
wszystkie kolejne żądania pomijają fazę kompilacji. Tylko nowe aktualizacje kodu są kompilowane & przechowywane.
ponieważ nie ma kroku kompilacji, możesz natychmiast zobaczyć zmiany w kodzie PHP.
buforowanie kodu OPcache jest domyślnie zintegrowane z PHP 5.5+.Zintegruj OPcache i przeprowadzaj testy wydajności, aby przyspieszyć działanie witryny.
3. Minify statyczne zasoby& buforowanie
Minifikacja to proces usuwania niepotrzebnych znaków z kodu źródłowego. Odbywa się to bez zmiany funkcjonalności kodu.
znakami mogą być białe spacje, podziały wierszy i komentarze. Jest czytelny dla ludzi, ale nieistotny dla maszyn.
Minifikacja zmniejsza rozmiar kodu źródłowego & czyni go bardziej wydajnym. Zmniejsza czas ładowania & wykorzystanie przepustowości.
programiści pracują również z kodem HTML, CSS lub JavaScript. Zminimalizowanie rozmiarów plików statycznych skryptów & pomaga skrócić czas przetwarzania.
wraz z tym można zastosować systemy buforowania, takie jak lakier & Redis. Pamięć podręczna umożliwia przechowywanie określonej zawartości dla przyszłych żądań.
możesz zmniejszyć obciążenie serwera za pomocą buforowania przeglądarki. Serwer nie musi odpowiadać na tysiące zapytań. Wszystkie kolejne żądania przechodzą przez system buforowania zamiast serwera.
pozwala zarządzać ogromną liczbą jednoczesnych żądań. Pamięć podręczna utrzymuje również stabilną wydajność aplikacji PHP podczas skoków ruchu.
4. Uaktualnij do najnowszej wersji PHP
z każdym znaczącym wydaniem PHP uzyskujesz poprawę prędkości. Uruchomienie PHP 8 było w listopadzie 2020. Został wyposażony w nowy zestaw funkcji dla zoptymalizowanej wydajności.
niektóre funkcje PHP v8 obejmują:
- typy Unii 2.0
- Dopasuj wyrażenie
- Bezpieczny operator Null
- atrybuty V2
- nazwane argumenty
- spójne błędy typów dla funkcji wewnętrznych
- nowe klasy, interfejsy i funkcje
- kompilacja Just-In-time (JIT)
kompilacja Just-In-Time lub JIT to nowa funkcja PHP V8 oparta na wydajności. JIT polega na kompilacji podczas wykonywania programu, a nie przed wykonaniem.
w PHP v7, OPcache pomijał kroki takie jak lexing, parsing i kompilowanie. Jednak maszyna wirtualna Zend nadal musiała kompilować opcode do natywnego kodu maszynowego.
narzędzie JIT tłumaczy PHP na kod maszynowy, który jest wykonywany na CPU. Oznacza to, że nie uruchamia kodu przez Zend VM, eliminując w ten sposób krok.
ten proces poprawia wydajność PHP i zużycie pamięci. Możesz łatwo włączyć & wyłączyć JIT, tak jak OPcache.
według programisty PHP Nikity Popowa, zalety kompilatora JIT obejmują:
- Lepsza wydajność dla kodu numerycznego.
- nieco lepsza wydajność dla kodu aplikacji webowych PHP.
- możliwość przeniesienia większej ilości kodu z C do PHP, ponieważ PHP będzie szybsze.
możesz zobaczyć mniej znaczącą korzyść w wydajności w PHP 8 niż aktualizacja z PHP 5 do PHP 7.
Pedro Escudero przetestował wydajność PHP 8. Używał PHP w wersjach 5.3, 7.4 i 8, z & bez kompilatora JIT.
uruchomił skrypt 100 razy dla każdej wersji & obliczając średni czas.Wyniki testów wykazały wzrost wydajności o 45% Dzięki kompilatorowi JIT dla PHP 8.
5. Poznaj wąskie gardła wydajności
wąskie gardła występują, gdy ograniczenia jednego komponentu spowalniają cały system. Istotne jest zidentyfikowanie wąskich gardeł wydajności adresów & w PHP. Mogą to być interfejsy API innych firm, zapytania do baz danych, buforowanie i tak dalej.
te wąskie gardła mogą wystąpić na różnych etapach rozwoju. Możesz dostosować swój kod na określonych etapach.
zaleca się ustawienie parametrów wydajności & prowadzenie testów podczas rozwoju. Pomaga określić czas przetwarzania dla każdego komponentu.
nawet jeśli twój kod PHP jest zoptymalizowany, mogą występować wąskie gardła w podsystemach.Sprawdź następujące obszary serwera www pod kątem problemów z wydajnością:
- pojemność sieci
- wykorzystanie pamięci
- wydajność procesora
- niechciane procesy w tle
- fragmentowany system plików
aby zidentyfikować wąskie gardła, śledź wydajność w całym cyklu życia aplikacji.Benchmarking wydajności umożliwia ocenę wydajności PHP za pomocą kluczowych wskaźników. Daje dane o średnim czasie reakcji, przepustowości, pamięci podręcznej, bazach danych &.
możesz sprawdzić dane cykli zwalniania i porównać je z metryką wydajności bazowej.Możesz także zminimalizować nadmiarowe połączenia i rozłożyć obciążenia na wiele serwerów.
monitorowanie wydajności, rejestrowanie & śledzenie błędów pomoże skutecznie zmniejszyć liczbę wąskich gardeł.
6. Optymalizacja kodu
kod jakości zwiększa wydajność i jest łatwy do zoptymalizowania. Istnieje wiele technik optymalizacji kodu PHP dostępnych dla programistów.
w PHP powinieneś używać pojedynczych cudzysłowów ( ” ) zamiast podwójnych cudzysłowów. Dla usług internetowych można używać JSON zamiast XML. Natywne funkcje PHP, takie jak json_encode( )
i json_decode( )
działają szybciej.
te małe zmiany prowadzą do ogólnej lepszej wydajności.
możesz użyć profilowania do strojenia wydajności PHP. Pomaga zidentyfikować powolny kod i inne wąskie gardła wydajności.
kod może się skomplikować z większą liczbą warstw & nowych funkcji. Profilowanie analizuje poszczególne linie kodu i szybko znajduje błędny kod.
bez profilera, potrzeba czasu & zgadywania, aby zdiagnozować problem. Użyj narzędzi PHP profilers, takich jak Zend, Blackfire lub Tideways, aby uzyskać analizę kodu.
wnioski
PHP jest wszechstronnym językiem skryptowym do tworzenia stron internetowych. Pozwala na tworzenie dynamicznych stron internetowych & aplikacji. Musisz jednak optymalizować PHP pod kątem prędkości w sposób ciągły.
w tym artykule omówiliśmy główne sposoby zwiększenia wydajności PHP.
upewnij się, że używasz najnowszej wersji PHP i najlepszych praktyk kodowania. Konieczne jest usunięcie wąskich gardeł i użycie narzędzi takich jak OPcache.
Optymalizacja PHP podczas tworzenia & cyklu aplikacji jest bardzo pomocna. Śledź wskaźniki wydajności i korzystaj z narzędzi monitorujących, aby utrzymać wydajność PHP. Wybierz również odpowiednie hosty internetowe i dodaj sieć dostarczania treści (CDN).
w ten sposób możesz zapewnić wysoką dostępność i szybsze ładowanie stron dla aplikacji internetowych.
aby uzyskać więcej informacji na temat PHP & hostingu w chmurze, sprawdź Blog CloudPanel.