přehled PHP
PHP je skriptovací jazyk na straně serveru používaný pro vývoj webových aplikací. Rasmus Lerdorf vyvinul první verzi v roce 1995.
zpočátku zkratka PHP znamenala osobní domovskou stránku. Po vydání verze 3 dostalo PHP rekurzivní zkratku “ PHP: Hypertext Preprocessor.“
PHP 4 bylo označováno jako motor Zend, když byl zaveden motor Zend. To bylo pojmenováno po jeho tvůrcích Andi Gutmans a Zeev Suraski.
in-memory kompilátor & executor model zlepšil svůj výkon drasticky. To také umožnilo uživatelům vytvářet dynamické webové aplikace.
PHP verze 5 přišla s objektově orientovaným programováním. Verze PHP 7.0 nabízely další vylepšení motoru Zend.
nejnovější verze PHP 8 nabízí některé pozoruhodné funkce. Dodává se s kompilátorem JIT pro zlepšení výkonu.
některé zajímavé fakty o PHP
- je to interpretovaný jazyk a nevyžaduje kompilátor.
- podporuje databáze jako MySQL, PostgreSQL, & Oracle.
- PHP kód se provádí přímo na serveru.
- je to jazyk s otevřeným zdrojovým kódem a přístupný všem.
- je populární, protože přibližně 79% webových serverů je napsáno v PHP.
- některé populární webové aplikace používající PHP jsou WordPress, Wikipedia & Yahoo.
1. Použijte nativní funkce PHP
místo ručního psaní funkcí použijte vestavěné funkce PHP. Pomáhá psát kód rychleji & vyhnout se problémům s výkonem.
PHP má knihovnu více než 1000 vestavěných funkcí. Ty jsou předdefinovány a volány přímo k provedení konkrétního úkolu.
pro efektivní zpracování můžete použít speciální PHP funkce & syntaxy spíše než obecné funkce.
získáte širokou škálu funkcí PHP & seznam metod. Můžete je použít k dokončení jakéhokoli cíle.
2. Povolit OPCache na PHP serveru
kompilace převádí lidský čitelný zdrojový kód do strojového jazyka (opcode).
opcode je čitelný serverem, takže může zpracovávat požadavky. Bez opcode musí být každý požadavek sestaven, což není rychlé.
zpracování PHP skriptů zahrnuje čtyři fáze:
- lexikální analýza (lexing)
- syntaktická analýza (parsování)
- kompilace
- provedení
OPcache zlepšuje výkon PHP ukládáním předkompilovaných skriptů do sdílené paměti. Tímto způsobem PHP nemusí načítat & analyzovat skripty při každém požadavku.
s OPcache jsou kroky odstraněny, takže můžete přímo spustit nebo spustit aplikaci.
všechny následující požadavky přeskočí fázi kompilace. Pouze nové aktualizace kódu jsou kompilovány & uloženy.
protože neexistuje žádný krok kompilace, můžete okamžitě vidět změny v kódu PHP.
Opcode caching přes OPcache je integrován do PHP 5.5+ ve výchozím nastavení.Integrujte OPcache a provádějte testování výkonu, abyste urychlili váš web.
3. Minify Static Assets & Caching
Minifikace je proces odstraňování nepotřebných znaků ze zdrojového kódu. To se provádí bez změny funkčnosti kódu.
znaky mohou být bílé mezery, konce řádků a komentáře. Je čitelný pro člověka, ale nepodstatný pro stroje.
Minifying snižuje velikost zdrojového kódu & dělá to efektivnější. Snižuje dobu načítání & využití šířky pásma.
vývojáři také pracují s kódem HTML, CSS nebo JavaScript. Minifikace statických skriptů & velikosti souborů pomáhají zkrátit dobu zpracování.
spolu s tím můžete použít systémy ukládání do mezipaměti, jako je lak & Redis. Cache umožňuje ukládat konkrétní obsah pro budoucí požadavky.
zatížení serveru můžete snížit pomocí ukládání do mezipaměti prohlížeče. Server nemusí reagovat na tisíce požadavků. Všechny následující požadavky procházejí systémem ukládání do mezipaměti místo serveru.
to vám umožní spravovat obrovské množství souběžných požadavků. Cache také udržuje výkon aplikace PHP stabilní během dopravních špiček.
4. Upgradujte na nejnovější verzi PHP
s každým významným vydáním PHP získáte zlepšení rychlosti. Spuštění PHP 8 bylo v listopadu 2020. To přišlo s novou sadou funkcí pro optimalizovaný výkon.
některé funkce PHP V8 zahrnují:
- typy Union 2.0
- Match expression
- Null safe operator
- atributy v2
- pojmenované argumenty
- konzistentní chyby typu pro interní funkce
- nové třídy, rozhraní a funkce
- Just-in-time (jit) compilation
Just-in-time compilation nebo JIT je nový výkon založený na funkce PHP V8. JIT zahrnuje kompilaci během provádění programu místo před provedením.
v PHP V7 OPcache přeskočil kroky, jako je lexing, analýza a kompilace. Zend VM však stále musel kompilovat opcode do nativního strojového kódu.
nástroj JIT překládá PHP do strojového kódu, který je spuštěn na CPU. To znamená, že nespustí kód Zend VM, čímž eliminuje krok.
tento proces zlepšuje výkon PHP a využití paměti. Můžete povolit & zakázat JIT snadno, stejně jako OPcache.
podle vývojáře PHP Nikita Popov, výhody kompilátoru JIT zahrnují:
- lepší výkon pro číselný kód.
- mírně lepší výkon pro PHP kód webové aplikace.
- potenciál přesunout více kódu z C do PHP, protože PHP bude rychlejší.
v PHP 8 můžete vidět méně podstatný výkonový přínos než upgrade z PHP 5 na PHP 7.
Pedro Escudero testoval výkon PHP 8. Používal PHP verze 5.3, 7.4 a 8 s & bez kompilátoru JIT.
spustil skript 100krát pro každou verzi & vypočítal průměrný čas.Výsledky testů ukázaly 45% zvýšení výkonu s kompilátorem JIT pro PHP 8.
5. Porozumět úzkým místům výkonu
úzkým místům dochází, když omezení jedné komponenty zpomalí celý systém. Je nezbytné identifikovat & úzká místa výkonu adresy v PHP. Mohou to být API třetích stran, databázové dotazy, ukládání do mezipaměti atd.
tato úzká místa se mohou objevit v různých fázích vývoje. Kód můžete doladit v určitých fázích.
doporučuje se nastavit výkonnostní parametry & provádět testy během vývoje. Pomáhá určit dobu zpracování pro každou součást.
i když je váš PHP kód optimalizován, mohou být v subsystémech úzká místa.Zkontrolujte následující oblasti webového serveru pro problémy s výkonem:
- kapacita sítě
- využití paměti
- výkon procesoru
- nežádoucí procesy na pozadí
- fragmentovaný souborový systém
Chcete-li identifikovat úzká místa, sledujte výkon celého životního cyklu aplikace.Benchmarking výkonu umožňuje vyhodnotit výkon PHP pomocí klíčových metrik. Poskytuje vám data o průměrné době odezvy, propustnosti, mezipaměti, & databází.
můžete zkontrolovat data pro cykly uvolnění a porovnat je se základní metrikou výkonu.Můžete také minimalizovat redundantní hovory a distribuovat pracovní zatížení na mnoha serverech.
sledování výkonu, protokolování & sledování chyb pomůže efektivně snížit počet úzkých míst.
6. Optimalizace kódu
kvalitní kód zvyšuje výkon a lze jej snadno optimalizovat. Pro vývojáře je k dispozici mnoho technik optimalizace kódu PHP.
v PHP byste měli používat jednoduché uvozovky ( “ ) spíše než dvojité uvozovky. Pro webové služby můžete použít JSON místo XML. Nativní PHP funkce jako json_encode( )
a json_decode( )
fungují rychleji.
tyto malé změny vedou k celkovému lepšímu výkonu.
pro ladění výkonu PHP můžete použít profilování. Pomáhá identifikovat pomalý kód a další překážky výkonu.
kód se může komplikovat s více vrstvami & novými funkcemi. Profilování analyzuje jednotlivé řádky kódu a rychle najde buggy kód.
bez profileru by diagnostika problému vyžadovala čas & . Použijte PHP profilery nástroje jako Zend, Blackfire, nebo Tideways získat analýzu kódu.
závěr
PHP je univerzální skriptovací jazyk pro vývoj webových aplikací. To vám umožní vytvářet dynamické webové stránky & aplikace. Musíte však optimalizovat PHP pro rychlost nepřetržitě.
v tomto článku jsme se zabývali hlavními způsoby, jak zvýšit výkon PHP.
ujistěte se, že používáte nejnovější verzi PHP a nejlepší postupy kódování. Je nezbytné odstranit úzká místa a používat nástroje, jako je OPcache.
optimalizace PHP během vývoje & aplikačního cyklu je velmi užitečná. Sledujte metriky výkonu a používejte monitorovací nástroje, které pomáhají udržovat výkon PHP. Také se rozhodněte pro vhodné webové hostitele a přidejte síť pro doručování obsahu (CDN).
tímto způsobem můžete zajistit vysokou dostupnost a rychlejší načítání stránky pro vaše webové aplikace.
Chcete-li získat více informací o PHP & cloud hosting, zkontrolujte CloudPanel blog.