Оптимизиране на PHP

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

Оптимизиране на PHP

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

Оптимизиране на PHP

Както обикновено се извършва PHP скрипт? PHP се отваря файл с кода, да го компилирате, а след това се изпълнява. Тъй като файловете могат да бъдат много, процесът на отваряне, четене и компилация може да отнеме много време и ресурси. Ако файловете не се променят, продължавайки съставяне не може да се направи. По-добре да го направи веднъж и да кешира резултата.

Това е, което прави opCache модул. Резултатът е първата компилация се съхранява в кеш паметта, което ще се проведе на PHP. По този начин, тя ще ускори изпълнението от липсата на процеса на тежката компилация. Когато са модифицирани файлове, самия модул нулира кеша и ще осигури прекомпилиране. С една дума, този модул го прави много полезни икономии на ресурси, дори и без да е необходимо по някакъв начин да се адаптира.

В версия PHP5.5 + Този модул се доставя в стандартен монтаж. В предишните версии, трябва да инсталирате уреда сами. Можете да проверите наличността, както следва:

# Blank заключение би означавало, че модулът не е

Ако версията е твърде рано, най-добре е да използвате АПК:

# Това е алтернативен opCache, но прави същото нещо

кеширане

код често е просто бавно. Например, призовава към API навън, тежък за вземане на проби от бази данни, обработка на големи файлове и т.н. В този случай, за кеширане на данни трябва да се използва като инструмент за оптимизация.

Оптимизиране на PHP

За 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 ще помогне да се избегне изтичане на памет.
  • Кеширане бавните секции на код често са най-просто и ефективно решение.
  • Бъдете наясно с важни подробности.

Оптимизиране на PHP

материали по темата