WordPress- ի , Joomla- ի կամ Laravel- ի վրա հիմնված կայքերի համար, որոնք չունեն օգտագործողի համար հատուկ բովանդակություն, ցանկալի է բոլոր էջերը պահել ստատիկ HTML հիշապահեստում և միայն վերականգնել հիշապահեստը ձեռքով (կամ ավտոմատ կերպով), երբ հետին պլանում փոփոխություններ են կատարվում: Այնուամենայնիվ, եթե էջը պարունակում է դինամիկ բովանդակություն, որը կախված է նստաշրջաններից և թխուկներից կամ լեզվից և գտնվելու վայրից, OPcache- ը հարմար է :
Նշված երեք համակարգերի համար, այսպես կոչված, գործարկման ժամանակը ավելի քան 100 ms է `նոր տեղադրված CentOS7 սերվերով (SSD- ով և PHP 7.1-ով): Ամեն անգամ, երբ գործարկվում է PHP սկրիպտ, այն պետք է կազմվի գործարկման ժամանակ բայթոդի մեջ: OPcache- ն այժմ իրականացնում է այս bytecode- ի քեշը. Եթե միևնույն PHP գրությունը կատարվի հաջորդ հարցման հետ, ապա այն այլևս հարկավոր չէ վերամշակել: OPcache- ն ակտիվացնելուց հետո մենք սահմանում ենք հետևյալ պարամետրերը:
9006cec6c5d3d2498ee26c5bfd91590a
Կատարման ժամանակը (միջինը `ավելի քան 10 մահապատիժ) այժմ զգալիորեն կրճատվել է:
WordPress 4.7.4 | Joomla 3.7 | Լարավել 5.4 | |
առանց OPcache- ի | 295 ms | 201 ms | 110 մվ |
OPcache- ի հետ | 54 մվ | 59 մվ | 13 մվ |
Գործոն | 5,5 | 3,5 | 8,5 |
Քանի որ մենք validate_timestamps- ը դնում ենք 0 և միևնույն ժամանակ վերափոխում_freq- ը մեկ օրվա տևողությամբ, հիշապահեստը գրեթե երբեք չի վերակառուցվում ավտոմատ կերպով (մենք դա գիտակցաբար անում ենք ձեռքով): Փոքր git որսակով PHP սցենարը կատարվում է յուրաքանչյուր «քաշումից»: Ինչպես ակտիվացնել մանգաղը:
a1678610c8b4c7db5997375944183830
a1678610c8b4c7db5997375944183830
Հետևյալ օգնականի գործառույթը օգտակար է նաև կոդի առանձին մասերի (կամ կատարման ամբողջ ժամանակի) չափման համար::
085f4291bbcc4e8a64bbea951ff49ab9
Եթե ցանկանում եք օգտակար տեղեկություններ ստանալ, ինչպիսիք են կարգավիճակը, օգտագործված հիշողությունը կամ պահված թվով ֆայլեր, դուք օգտագործում եք այս PHP գործառույթը:
3f6309d04bc7e48dd909859321b96209
Տեղական զարգացման միջավայրում OPcache- ից օգուտ ստանալու համար (որը հիմնականում խորհուրդ չի տրվում) մենք օգտագործում ենք հնարք:
OPcache- ն ակտիվ է բոլոր սերվերների վրա, որոնց վրա տեղադրված է OPcache մոդուլը, և որի վրա հստակ դրված չէ opcache.enable պարամետրը: Մենք այդպես ենք թողնում: Մենք php.ini- ում տեղադրում ենք միայն opcache.validate_timestamps = 1: Սա նշանակում է, որ opcache.revalidate_freq = 2. Մենք հասնում ենք նրան, որ OPcache- ը վերալիցքավորվում է գրեթե անընդմեջ յուրաքանչյուր նախագծի համար: Այն նախագծերի համար, որոնցում մենք ցանկանում ենք մշտապես ակտիվացնել OPcache- ն, մենք օգտագործում ենք նախագծերի հետ կապված հետևյալ պարամետրում .htaccess- ում:
1dd64a3f2fe4425b29b1409410fe3fc0
Դրանից հետո մենք վերագործարկում ենք վեբ սերվերը և ստեղծում հետևյալ սցենարը:
91fb5289160e410607c9ea89112a575b
Այս սցենարը մաքրում է հիշապահեստը և միաժամանակ վերակառուցում այն: Այժմ մենք սահմանում ենք աշխատանքային տարածքի հետ կապված RunOnSave հրամանը մեր սիրելի խմբագրիչի VSCode- ում:
91fb5289160e410607c9ea89112a575b