site logo
  • Կայքի մասին
  • Ծրագրավորում
  • Ժեշտ
  • Անվտանգություն
  • Հարց ու Պատասխան (ՀուՊ)
Հոկտեմբեր 1, 2012  |  By Արտակ Կոլյան In

Վորդպրեսի(+ WPML) օպտիմալացման մի օրինակ

sitepress-multilingual-cms-after

Այս հոդվածի նպատակն է ցույց տալ վորդպրեսով աշխատող կայքի օպտիմալացման մի օրինակ:
Ուրեմն այսպես, ելակետերն են.

  • Կայքը աշխատում է վորդպրեսի վրա
  • Կայքը մի քանի լեզուներով աշխատեցնելու նպատակով տեղադրված է WPML(WordPress MultiLingual) փլագինը
  • Տեղադրված են նաև մի քանի այլ փլագիններ

Գոյություն ունի մի օգտակար փլագին, որը հնարավորություն է ընձեռնում էջերի բեռնման ընթացքում փլագինների ազդեցության վերլուծություն կատարել, թե էջերի բեռնման ժամանակ, որ փլագինը որքան ժամանակ է ավելացնում էջի բեռնման ընդհանուր ժամանակին, ինչպես նաև ցույց է տալիս յուրաքանչյուր փլագինի կողմից տվյալների բազային կատարած հարցումների քանակը: Այլ բառերով ասած, որքան է յուրաքանչյուր փլագինը ծանրաբեռնում տվյալների բազան և վերջին հաշվով նաև ամբողջ կայքը: Փլագինը կոչվում է P3 Plugin Profiler:
Իմ դեպքում փլագինը սկզբում ցույց էր տալիս հետևյալ պատկերը, սա օգտագործվող փլագինների աշխատանքի ժամանակային գրաֆիկն է:

Վորդպրես(+WPML), բաժինը կայքի ռեսուրսների օգտագործման մեջ

Ինչպես տեսնում էք կայքը ամենաշատ ծանրաբեռնող փլագինը հենց մեր բազմալեզու փլագինն է, որի մասին սկզբում ասում էի: Հետո նայում եմ տվյալների բազային կատարված հարցումների քանակին:

Վորդպրեսս, բոլոր փլագինների հարցումները տվյալների բազային

Ու երևում է մի ահավոր պատկեր, մի էջ ստեղծելու համար համակարգը 500-ից ավել հարցում է անում տվյալների բազային: Սա ոչ թե շատ է, այլ անթույլատրելի ճոխություն է, չափազանց մեծ ճոխություն … Երկու գրաֆիկները համադրելով ենթադրում եմ, որ ամենաշատ հարցումները հենց WPML-ն է անում:
Մի փոքր մտածելուց հետո հասկացա ինչից է դա: Այսպես , ամեն մի էջ սարքելիս համակարգը հարցնում է ՏԲ*-ին կայքի բոլոր էլեմենտների թարգմանությունները, բացի դրանից, պիտի գտնի ակտիվ լեզվով առկա կատեգորիաները, բաժինները, նշագրերը, նաև հիմնական մենյուի մեջ գտնվող հղումները, բացի դրանից բոլոր օգտագործված վիջեթների մեջ գտնվող ակտիվ լեզվով առկա հղումները ու հղումների վերնագրերը/խարիսխները(anchor) և այլն: Ու երիևի թե հնարավոր չեր ավելի օպտիմալ գրել WPML փլագինը, որովհետև իրականում նախօրոք պարզ չի, թե որ վիջեթներն են օգտագործվելու կոնկրետ կայքում:
Ես ինձ բավարարող խնդրի լուծումը գտել եմ: Հիմնական մենյուի և բաժինների վիջեթը դարձրել եմ ստատիկ HTML, մտածելով որ դրանք հաճախակի չէն փոփոխվում, ամեն օր չի որ նոր բաժին է հայտնվում կայքում, ու իմաստ չունի, որ դրանք ստեղծելու համար համակարգը դիմի ՏԲ-ին: Ակտիվ լեզվի որոշման համար էլ WPML-ն տալիս է այս «գլոբալ» փոփոխականը

ICL_LANGUAGE_CODE

հասարակ if լեզվական կառուցվածքուվ կարելի է ասել, որ եթե ակտիվ լեզուն հայերեն է , ապա տպիր այսինչ HTML-ը, եթե անգլերեն ՝ ապա այնինչ HTML-ը …

Ու տեսեք արդյունքը, WPML-ն իհարկե բոլոր մնացած փլագինների հետ համեմատած ամենաորկրամոլ փլագինն է մնում, սակայն ընդհանուր ծանրաբեռնվածությունը անհամեմատ նվազել է:

Վորդպրես(+WPML), որքան ժամանակ է աշխատում, փոփոխություններից հետոՎորդպրես(+WPML), որքան ժամանակ է աշխատում, փոփոխություններից հետո

Տվյալների բազային արված հարցումների քանակի մասին էլ չէմ խոսում: Նվազել է 4-ից ավել անգամ:

Վորդպրեսս, բոլոր փլագինների հարցումները տվյալների բազային, փոփոխություններից հետոՎորդպրեսս, բոլոր փլագինների հարցումները տվյալների բազային, փոփոխություններից հետո

Եզրակացություն: Կայքի արագագործության համար անհրաժեշտ է բոլոր հնարավոր դեպքերում , դինամիկ ստեղծվող(ՏԲ-ից կարդացվող) էլեմենտները փոխարինել ստատիկ HTML-ներով: Ու սա չի վերաբերվում միայն WPML փլագինին: Սա ավելի ընդհանուր կանոն է:

ՀԳ: Իհարկե հարյուրին մոտ հարցումները նույնպես չափազանց շատ են, բայց այս մինիմալ փոփոխությունները** արդեն բերել են մեծ արդյունքի: Հարցումները ավելի քչացնելու անհրաժեշտություն դեռ չէմ տեսնում: Եթե որոշեմ, որ պետք է ավելի խորը քչփորել, ու հետաքրքիր բան լինի անպայման կգրեմ:

ՀԳ:2 Հայկական ցանցում mysql+վորդպրեսս օպտիմալացման մասին միայն մի հոդված(տեանյութ) գիտեմ, բավականին հետաքրքիր է, ահա հղումը
http://www.e-armenians.com/videotips/wp-db-optimization/

*ՏԲ-տվյալների բազա, տվյալների հենք
**սրանք միայն թեմայի ֆայլերի փոփոխություններ են, բուն WPML փլագինի ֆայլերին ձեռք չէմ տվել:

ՍկզբնԱղբյուր

Վորդպրեսի(+ WPML) օպտիմալացման մի օրինակ, 10.0 out of 10 based on 1 rating
WPML արագագործություն Վորդպրես օպտիմալացում
Previous StoryBGP Dual-Stack կամ քայլ IPv4-ից IPv6
Next StoryԻնչպե՞ս Mozilla Firefox-ի հիշողության տողից ջնջել գրառումները

Comments: 7 replies added

  1. Gevorg Հունվար 13, 2013 Մեկնաբանել

    Ծանոթ իրավիճակա :-) Կարելի է օգտվել նաև քեշինգի http://wordpress.org/extend/plugins/w3-total-cache/ այս պլագինից, որը դինամիկ կտորները ավտոմատ քեշավորում է և մյուս անգամ բացելուց ցուցադրում է գեներացված և պահված HTMLը, ոչ դե նորից ամբողջությամբ գեներացնում է էջը: Հ.Գ. Ես մի պահ երբ դեռ սկսնակ wordpress ի մեջ, կայքում օգտագործել էի 40-50 ից ավել պլագիններ, որոնց հեռացնելուց հետո նաև ՏԲ ում մնացել էր ահավոր լիքը զիբիլ, այնպես որ հիմա աշխատում եմ այն ֆունկցիոնալությունը, որն ինձ անհրաժեշտ է գրել ինքս թեմայի ֆունկցիաների մեջ: Տենց 10 անգամ արագացրեցի կայքս :-)

    • Արտակ Կոլյան Հունվար 13, 2013 Մեկնաբանել

      էտ փլագինի մասին գիտեմ, բայց փլագիններ օգտագործելը էտքան էլ հետաքրիր չի, սիրում եմ քչփորել :)

  2. Gevorg Հունվար 13, 2013 Մեկնաբանել

    Ի միջայլոց շատ շնորհակալություն էս մոնիտորինգի փլագինի համար, ես ժամանակին ման էի գալիս սենց բան, բայց ոչ մի ձև չեի գտնում!!!

    • Արտակ Կոլյան Հունվար 13, 2013 Մեկնաբանել

      խնդրեմ , ծանրաբեռնված կայքերի օպտիմալացման ժամանակ շատ օգտակար ա

      • Gevorg Հունվար 13, 2013 Մեկնաբանել

        Սաղ հեչ, երբ ես գալիս գնանք Սուրբ ստեփանոս? :-)))

  3. Gevorg Հունվար 13, 2013 Մեկնաբանել

    * Սուրբ Ստեփանոս?

    • Արտակ Կոլյան Հունվար 13, 2013 Մեկնաբանել

      դրա մասին հետո կխոսանք :)

Join in: leave your comment Cancel Reply

(will not be shared)

Որոնում

Նշագրեր

android (12) C++ (10) C և C++ (11) Excel (10) html (10) Network Administration (16) System Administration (28) Windows 7 (14) Անվտանգություն (26) ԳՆՈՒ/Լինուքս (16) Թեյնիկներին (55) Ժեշտ (29) Լակոնիկ (21) Լինուքս/Յունիքս հրամաններ (23) Լուսանկարչություն և մշակում (15) Խելախոսներ (14) Ծրագրավորման լեզուներ (13) Ծրագրավորում (43) Ծրագրեր (46) Հայականացում (28) Հումոր (11) Ուսումնական նյութեր (33) Չդասակարգված (11) Սոցցանցային Հմտություններ (19) Վեբ (24) Վերլուծություն (10) Վինդոուս 7 (10) Վորդպրես (21) ՏՏ և փիլիսոփայություն (21) Տվյալների բազաներ (12) Օպերացիոն համակարգեր (25) Օֆիսային ծրագրեր (22) անդրոիդ (11) բաշ (10) ինտերնետ (11) խելախոսներ (13) համացանց (15) հայատառ (10) հայերեն (11) հայերեն ստեղնաշար (11) հայկական սոֆթ (11) ստեղնաշար (10) սքրիփթ (14) վինդոուս (12) տեսանյութ (23)
Copyright ©2017 ThemeFuse. All Rights Reserved