Ինչպե՞ս լուծել VPS բարձր բեռը: Կատարման օպտիմիզացման մեթոդ + պրոցեսորի հիշողության ընդլայնման ամբողջական ուղեցույց

Ձեր VPS-ը գերբեռնված է և պատրաստվում է փլուզվել:

Սկսած 4 միջուկային 16 ԳԲ կոնֆիգուրացիայից՝ այս հոդվածը մանրամասն վերլուծում է, թե ինչպես ընտրել համապատասխան քանակի պրոցեսորային միջուկներ և հիշողություն, և տրամադրում է VPS-ի արդյունավետության օպտիմալացման համապարփակ ուղեցույց:

Անկախ նրանից, թե դա տվյալների բազայի օպտիմիզացում է, PHP հավելվածի ճշգրտում կամ ապարատային արդիականացում, մենք ունենք հատուկ առաջարկներ, որոնք կօգնեն ձեզ գտնել լավագույն լուծումը՝ ձեր VPS-ն ավելի արագ և կայուն դարձնելու համար, և հրաժեշտ տվեք կատարողականի խոչընդոտներին:

Հուսով եմ, որ դրանք կարող են օգնել ձեզ, որպեսզի ձեր VPS-ն այլևս քյաբաբի կրպակի պես զբաղված չլինի:

VPS-ը մեծապես բեռնված է: Քանի՞ պրոցեսորի միջուկ և հիշողություն պետք է թարմացվի:

Ինչպե՞ս լուծել VPS բարձր բեռը: Կատարման օպտիմիզացման մեթոդ + պրոցեսորի հիշողության ընդլայնման ամբողջական ուղեցույց

Ենթադրենք, որ VPS կոնֆիգուրացիայի CPU-ն 4 միջուկ է + 16 ԳԲ հիշողություն, ստուգեք top Բեռնվածության իրավիճակը լուրջ է. Քանի՞ միջուկ և հիշողություն պետք է օգտագործվի VPS-ի համար:

top - 02:34:42 up 1:55, 3 users, load average: 54.22, 34.14, 32.00
Tasks: 179 total, 72 running, 107 sleeping, 0 stopped, 0 zombie
%Cpu(s): 70.7 us, 27.4 sy, 0.0 ni, 1.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 16777216 total, 2584976 free, 13411120 used, 781120 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 3282716 avail Mem

(此处省略……)

ձեր տրամադրածից top Դատելով հրամանի ելքից՝ ձեր VPS-ի ծանրաբեռնվածությունը բավականին բարձր է, միջին ծանրաբեռնվածությունը հասնում է 54.22-ի (վերջին 1 րոպեն), 34.14-ի (վերջին 5 րոպեն) և 32.00-ի (վերջին 15 րոպեն):

Սա ցույց է տալիս, որ ձեր համակարգը մեծ օգտագործում է: Ձեր VPS-ն ունի 4 միջուկանի պրոցեսոր և 16 ԳԲ օպերատիվ հիշողություն, սակայն օգտագործված հիշողությունը 13,411,120 ԿԲ է, որից միայն 781,120 ԿԲ-ն է օգտագործվում որպես բուֆեր։

Համաձայն top Հրամանի ելքից դուք կարող եք տեսնել, որ կան մի քանի ռեսուրսներ ինտենսիվ գործընթացներ.

  • mariadbd (MariaDB տվյալների բազայի ծառայություն).Խլում է պրոցեսորի մեծ ռեսուրսներ (143.1%):
  • memcached:Զբաղեցնում է պրոցեսորի որոշակի քանակություն (7.7%)։
  • Բազմաթիվ php-cgi գործընթացներ.Յուրաքանչյուրը վերցնում է որոշակի պրոցեսորի և հիշողության ռեսուրսներ:

Ինչպե՞ս լուծել VPS բարձր բեռը:

Բարձր ծանրաբեռնվածության լուծումները կարող են ներառել.

  1. Օպտիմալացնել տվյալների բազան.Եթե ​​mariadbd-ը շատ պրոցեսոր է վերցնում, ձեզ հարկավոր է օպտիմալացնել տվյալների բազայի հարցումները կամ դիտարկել տվյալների բազայի սերվերի ռեսուրսների ավելացումը:
  2. Օպտիմալացնել PHP հավելվածները.Քանի որ կան բազմաթիվ php-cgi գործընթացներ, որոնք խլում են մեծ քանակությամբ պրոցեսոր և հիշողություն, հնարավոր է, որ ձեզ անհրաժեշտ լինի օպտիմալացնել ձեր PHP հավելվածը կամ սցենարը՝ ռեսուրսների սպառումը նվազեցնելու համար:
  3. Սահմանափակեք գործընթացների քանակը.Մտածեք օգտագործել nginx-ի worker_processes-ի կամ PHP-FPM-ի pm-ի կարգավորումները՝ գործընթացների քանակը սահմանափակելու համար:
  4. Ռեսուրսի ընդլայնում.Եթե ​​օպտիմիզացումը դեռ չի բավարարում ձեր կարիքները, ապա ձեզ հարկավոր է թարմացնել ձեր VPS-ն ավելի շատ միջուկներով կամ ավելի շատ RAM-ով կազմաձևման:
  5. Դիտարկեք և վերլուծեք.Օգտագործեք մոնիտորինգի ավելի առաջադեմ գործիքներ՝ համակարգի ռեսուրսների օգտագործումը վերլուծելու և խոչընդոտները հայտնաբերելու համար:
  6. Բեռի հավասարակշռում.Եթե ​​երթևեկությունը խնդրի մի մասն է, օգտագործեք բեռի հավասարակշռումը՝ մի քանի սերվերների վրա հարցումները տարածելու համար:

Նախքան ձեր VPS-ի արդիականացումը մտածելը, խստորեն խորհուրդ է տրվում նախ օպտիմալացնել ձեր համակարգը և հավելվածները:

Սարքավորումների ռեսուրսների արդիականացումը պետք է կատարվի որպես վերջին միջոց և միայն այն դեպքում, երբ որոշվի, որ ներկայիս սարքաշարը չի կարող օպտիմիզացվել կարիքները բավարարելու համար:

Ինչպե՞ս սահմանել VPS գործընթացի սահմանաչափը:

Գործընթացի սահմանները սահմանելիս պետք է հաշվի առնել հետևյալ գործոնները.

  • Գործընթացների ընթացիկ քանակը.Ձեզ անհրաժեշտ է գործընթացի ողջամիտ սահմանաչափ, որն ավելի բարձր է, քան գործընթացների ընթացիկ միջին թիվը՝ բնականոն աշխատանքի վրա ազդելուց խուսափելու համար:
  • Համակարգի և կիրառման պահանջներ.Հասկացեք, թե ձեր համակարգը և հավելվածները սովորաբար քանի գործընթաց են պահանջում գործարկելու համար:
  • Ռեսուրսների օգտագործում.Դիտեք պրոցեսորի և հիշողության օգտագործումը՝ գործընթացի ողջամիտ սահմանաչափերը որոշելու և ռեսուրսների սպառումից խուսափելու համար:
    Հաշվի առնելով ձեր սերվերում առկա գործընթացների քանակը, խորհուրդ է տրվում չսահմանել գործընթացի սահմանաչափը շատ ցածր:

Ավելի թույլ սահմանը, օրինակ՝ 50-ը կամ 100-ը մեղմ սահմանի համար և 100-ը կամ 200-ը՝ կոշտ սահմանի համար, կարող է ավելի նպատակահարմար լինել: Դուք կարող եք դա կարգավորել՝ հիմնվելով ձեր սերվերի բեռնվածության և կատարողականի վրա:

Եթե ​​որոշեք փոխել գործընթացի սահմանները, ուշադիր հետևեք ձեր սերվերի աշխատանքին և պատրաստ եղեք հետաձգել փոփոխությունները, եթե խափանում լինի: Միևնույն ժամանակ, հաշվի առեք հավելվածների և համակարգի կոնֆիգուրացիաների օպտիմալացումը՝ ավելորդ գործընթացների քանակը նվազեցնելու համար:

Linuxհամակարգ, կարող ես անցնել /etc/security/limits.conf Ֆայլի կարգավորումները սահմանափակում են բաց ֆայլերի քանակը, ձևաչափը հետևյալն է.

<用户名或用户组> soft nofile <软限制值>
<用户名或用户组> hard nofile <硬限制值>

Ենթադրելով, որ գործընթացի սահմանները սահմանվում են.

elo hard nproc 1000
elo hard nofile 5000

VPS-ն արդիականացվել է 4 միջուկից 16 ԳԲ-ից մինչև օպտիմալ կազմաձևման պլան

Նկատվում է, որ ամենաշատը աշխատում է մոտ 500 պրոցես, ուստի անհրաժեշտ է արդյոք թարմացնել սերվերի կոնֆիգուրացիան: Ինչ սերվերի կոնֆիգուրացիա է առաջարկվում թարմացնել:

Ենթադրելով, որ ձեր հավելվածը պետք է միաժամանակ գործարկի մեծ թվով գործընթացներ, և դուք ցանկանում եք համոզվել, որ համակարգը բավարար ռեսուրսներ ունի բարձր բեռը կարգավորելու համար, ահա մի քանի կոնկրետ առաջարկներ.

  • CPU միջուկների քանակը.Թարմացրեք պրոցեսորի՝ 8, 16 կամ ավելի միջուկներով՝ կախված նրանից, թե արդյոք ձեր հավելվածը կարող է օգուտ քաղել բազմաթելից:
  • հիշողության չափը:Բարձրացրեք հիշողությունը մինչև 32 ԳԲ, 64 ԳԲ կամ ավելի բարձր՝ կախված ձեր հավելվածի հիշողության պահանջներից և ձեր կողմից իրականացվող գործընթացների քանակից:
  • Լրացուցիչ ռեսուրսներ.Մտածեք ավելացնել լրացուցիչ ռեսուրսներ, ինչպիսիք են տվյալների բազայի հատուկ սերվերը կամ բեռի հավասարակշռիչը, ընդհանուր կատարողականությունը և հուսալիությունը բարելավելու համար:

Հիշեք, որ ապարատային կոնֆիգուրացիայի արդիականացումը արդյունավետության խնդիրների պատասխանը չէ: Համոզվեք, որ ձեր հավելվածի կոդը, տվյալների բազայի հարցումները և սերվերի կազմաձևերը օպտիմիզացված են՝ լրացուցիչ ապարատային ռեսուրսներից լիարժեք օգտվելու համար:

Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ ) կիսվել է «Ինչպե՞ս լուծել VPS-ի բարձր բեռը»: Կատարման օպտիմիզացման մեթոդները + CPU-ի հիշողության ընդլայնման ամբողջական ուղեցույցը» օգտակար կլինի ձեզ համար:

Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-31747.html

Ավելի շատ թաքնված հնարքներ բացահայտելու համար🔑, միացեք մեր Telegram ալիքին։

Տարածեք և հավանեք, եթե ձեզ դուր եկավ: Ձեր կիսումներն ու հավանումները մեր շարունակական շարժառիթն են:

 

发表 评论

Ձեր էլփոստի հասցեն չի հրապարակվի: Օգտագործվում են պահանջվող դաշտերը * Պիտակ

Հոդվածների տեղեկատու
Ոլորել դեպի սկիզբ