Оптимизиране на PHP
Има няколко правила, които трябва да се спазват, за да се увеличи скоростта на PHP приложения. Правилата са прости и не изискват значителни промени в съществуващи приложения. Материалът обхваща нюансите на настройките на код на PHP и системни. Няколко прости стъпки, ще ви помогнат да оптимизирате PHP приложения няколко пъти.

FastCGI - това е една от опциите за свързване на PHP за уеб сървър. Това е най-добре се използва в съчетание с Nginx. PHP-FPM (FastCGI контейнер за PHP) и Nginx сътрудничество за подпомагане по подразбиране, и много лесно да се създаде.

Както обикновено се извършва PHP скрипт? PHP се отваря файл с кода, да го компилирате, а след това се изпълнява. Тъй като файловете могат да бъдат много, процесът на отваряне, четене и компилация може да отнеме много време и ресурси. Ако файловете не се променят, продължавайки съставяне не може да се направи. По-добре да го направи веднъж и да кешира резултата.
Това е, което прави opCache модул. Резултатът е първата компилация се съхранява в кеш паметта, което ще се проведе на PHP. По този начин, тя ще ускори изпълнението от липсата на процеса на тежката компилация. Когато са модифицирани файлове, самия модул нулира кеша и ще осигури прекомпилиране. С една дума, този модул го прави много полезни икономии на ресурси, дори и без да е необходимо по някакъв начин да се адаптира.
В версия PHP5.5 + Този модул се доставя в стандартен монтаж. В предишните версии, трябва да инсталирате уреда сами. Можете да проверите наличността, както следва:
# Blank заключение би означавало, че модулът не е
Ако версията е твърде рано, най-добре е да използвате АПК:
# Това е алтернативен opCache, но прави същото нещо
кеширане
код често е просто бавно. Например, призовава към API навън, тежък за вземане на проби от бази данни, обработка на големи файлове и т.н. В този случай, за кеширане на данни трябва да се използва като инструмент за оптимизация.

За PHP най-популярното решение за кеширане е Memcache. Много лесен за използване и много бърз, защото Той поддържа само най-необходимото.
Ако току-що сте инсталирали PHP, уверете се, че сте настроили най-важните параметри за вашия сайт. Също така може да спести ресурси:- memory_limit = 32M - че не трябва да зададете този параметър е твърде голям. Увеличете го само в крайни случаи.
- zlib.output_compression = Изключено. zlib.output_compression_level = -1 - компресиране на по-доброто използване на страна на сървъра Web.
- max_execution_time = 5 - максималното време на скрипта не трябва да бъде повече от 5 секунди. Увеличете само в крайни случаи.
- zend.enable_gc = На - включва колектор боклук (което е за оптимизиране на паметта за фон).
- expose_php = Изключено - PHP не изпрати своя версия с отговора.
- report_memleaks = On - ще бъде изпратен на информацията в дневника грешка за откриване на течове памет.
- post_max_size = 4М. upload_max_filesize = 4М - определя максималния размер на исканията и изтеглянията. Тя ви предпазва от обработката на огромни искания, които трябва да бъдат на вашия сайт.
По подразбиране, PHP съхранява на сесията файлове. Това е доста ефективно решение. Но когато файлът става много много (десетки хиляди), които работят с тях, ще се забави в същата папка (особено файловите системи). В този случай е по-добре да се премести на сесията да Memcache (php.ini):
# Localhost: 11211 е стандарт хост и порт MemCache
код за оптимизация
Не забравяйте, че за освобождение на Палестина - това винаги е много бавен. Обектите трябва да се създаде, някъде да се съхранява и да унищожи. Не използвайте обекти, а ако не е нужно. Например, тук:
# Създаване на даден обект, за да запазите данните в базата данни
# Използвайте списъка на обектите само да се оттегли имот
В тези примери, използването на ООП не прави много смисъл. Но консумира ресурси. Опитайте се да използвате масиви, когато не са необходими обекти:
# Избягвайте създаването на един обект, функцията просто съхранява данните от масива към базата данни
# Това е много по-добре да се направи проста изберете и показване на желаните данни от масива
Когато работите с файлове, които използват абсолютни пътеки. Тогава няма да има допълнително работа за търсене на файл:
Клас постоянна работа по-добре, отколкото да определи:
Не използвайте функции, предвидени, тъй като те ще се повтаря всеки път:
Както масиви от ключовете винаги цитират цитирани низове.
Използвайте вградените функции работят с низове, вместо на регулярни изрази, ако е възможно.
Използвайте низ с единични кавички:
PHP скриптове Cron-
Когато PHP се използва за разработване на скрипт, който ще се изпълнява на короната, трябва да се избягва използването на глобални променливи. Например:
От $ мачове променлива се предава чрез връзка. Това означава, че с всяко повторение, то ще расте. Друг често срещан пример е просто като се използва общ масив:
Сега променливи актуализациите на $ ще нарасне до максимална граница. При достигане на лимита на паметта, скриптът ще бъде спряно. Следете всички променливи, е доста трудно, така че е най-добре да използвате функциите. Всички променливи, създадени в рамките на една функция, ще бъдат изтрити след приключване:
Най-важното
- Не забравяйте да използвате opCache за PHP. Това спестява значителен дял от средствата.
- Използвайте FastCGI (най-добър Nginx + PHP-FPM).
- Функция на проблеми CZK ще помогне да се избегне изтичане на памет.
- Кеширане бавните секции на код често са най-просто и ефективно решение.
- Бъдете наясно с важни подробности.
