Məqalələr kataloqu
VPS-iniz həddən artıq yüklənib və çökmək üzrədir?
4 nüvəli 16 GB konfiqurasiyadan başlayaraq, bu məqalə müvafiq sayda CPU nüvəsi və yaddaşın necə seçiləcəyini ətraflı təhlil edir və VPS performansını optimallaşdırmaq üçün hərtərəfli bələdçi təqdim edir.
İstər verilənlər bazasının optimallaşdırılması, istər PHP tətbiqinin tənzimlənməsi, istərsə də aparatın təkmilləşdirilməsi olsun, VPS-nin daha sürətli və sabit işləməsi üçün ən yaxşı həll yolunu tapmağınıza kömək edəcək və performans problemləri ilə vidalaşmağa kömək edəcək xüsusi təkliflərimiz var!
Ümid edirəm ki, bunlar sizə kömək edə bilər ki, VPS-niz artıq kabab köşkü kimi məşğul olmayacaq!
VPS çox yüklənib. Nə qədər CPU nüvəsi və yaddaşı təkmilləşdirmək lazımdır?

Fərz edək ki, VPS konfiqurasiya prosessoru 4 nüvə + 16 GB yaddaşdır, yoxlayın top Yük vəziyyəti ciddidir VPS üçün neçə nüvə və yaddaş istifadə edilməlidir?
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
(此处省略……)
təmin etdiklərinizdən top Komanda çıxışına əsasən, VPS-nin yükü kifayət qədər yüksəkdir, orta yük 54.22 (son 1 dəqiqə), 34.14 (son 5 dəqiqə) və 32.00 (son 15 dəqiqə) çatır.
Bu, sisteminizin yüksək istifadə edildiyini göstərir. VPS-niz 4 nüvəli CPU və 16 GB RAM-a malikdir, lakin istifadə olunan yaddaş 13,411,120KiB-dir, onlardan yalnız 781,120KiB bufer kimi istifadə olunur.
Görə top Komanda çıxışından bir neçə resurs tələb edən proseslərin olduğunu görə bilərsiniz:
- mariadbd (MariaDB verilənlər bazası xidməti):Çoxlu CPU resursunu tutur (143.1%).
- memcached:Müəyyən miqdarda CPU (7.7%) tutur.
- Çoxsaylı php-cgi prosesləri:Hər biri müəyyən CPU və yaddaş resurslarını tutur.
VPS yüksək yükünü necə həll etmək olar?
Yüksək yük üçün həllər aşağıdakıları əhatə edə bilər:
- Verilənlər bazasını optimallaşdırın:Əgər mariadbd çox CPU tutursa, siz verilənlər bazası sorğularını optimallaşdırmalı və ya verilənlər bazası serverinin resurslarını artırmağı düşünməlisiniz.
- PHP proqramlarını optimallaşdırın:Çoxlu CPU və yaddaş alan çoxsaylı php-cgi prosesləri olduğundan, resurs istehlakını azaltmaq üçün PHP proqramınızı və ya skriptinizi optimallaşdırmalısınız.
- Proseslərin sayını məhdudlaşdırın:Proseslərin sayını məhdudlaşdırmaq üçün nginx-in worker_processes və ya PHP-FPM-in pm parametrindən istifadə etməyi düşünün.
- Resurs uzadılması:Optimallaşdırma hələ də ehtiyaclarınıza cavab vermirsə, VPS-ni daha çox nüvə və ya daha çox RAM ilə konfiqurasiyaya təkmilləşdirməli ola bilərsiniz.
- Monitorinq və təhlil:Sistem resurslarından istifadəni təhlil etmək və darboğazları müəyyən etmək üçün daha təkmil monitorinq vasitələrindən istifadə edin.
- Yük balansı:Əgər trafik problemin bir hissəsidirsə, sorğuları çoxsaylı serverlər arasında yaymaq üçün yük balansından istifadə etməyi düşünün.
VPS-ni təkmilləşdirməyə başlamazdan əvvəl, əvvəlcə sisteminizi və tətbiqlərinizi optimallaşdırmağınız tövsiyə olunur.
Aparat resurslarının təkmilləşdirilməsi son çarə kimi və yalnız cari avadanlıqların ehtiyacları ödəmək üçün optimallaşdırıla bilməyəcəyi müəyyən edildikdə aparılmalıdır.
VPS proses limitini necə təyin etmək olar?
Proses limitlərini təyin edərkən aşağıdakı amilləri nəzərə almalısınız:
- Cari proseslərin sayı:Normal işləməyə təsir etməmək üçün sizə cari orta proseslər sayından yüksək olan ağlabatan proses limiti lazımdır.
- Sistem və tətbiq tələbləri:Sisteminizin və tətbiqlərinizin işləməsi üçün adətən neçə prosesin tələb olunduğunu anlayın.
- Resurs istifadəsi:Ağlabatan proses məhdudiyyətlərini müəyyən etmək və resursların tükənməsinin qarşısını almaq üçün CPU və yaddaş istifadəsinə nəzarət edin.
Serverinizdəki proseslərin cari sayını nəzərə alaraq, proses limitini çox aşağı təyin etməmək tövsiyə olunur.
Yumşaq limit üçün 50 və ya 100 və sərt limit üçün 100 və ya 200 kimi daha boş bir limit daha uyğun ola bilər. Bunu serverinizin yükünə və performansına əsasən tənzimləyə bilərsiniz.
Proses limitlərini dəyişdirmək qərarına gəlsəniz, serverinizin performansını yaxından izləyin və nasazlıq olarsa, dəyişiklikləri geri götürməyə hazır olun. Eyni zamanda, lazımsız proseslərin sayını azaltmaq üçün proqram və sistem konfiqurasiyalarının optimallaşdırılmasını nəzərdən keçirin.
在Linuxsistemdən keçə bilərsiniz /etc/security/limits.conf Fayl parametrləri açıq faylların sayını məhdudlaşdırır, format aşağıdakı kimidir:
<用户名或用户组> soft nofile <软限制值>
<用户名或用户组> hard nofile <硬限制值>
Proses limitlərinin müəyyən edildiyini fərz edirik:
elo hard nproc 1000
elo hard nofile 5000
VPS 4 nüvəli 16 GB-dan optimal konfiqurasiya planına yüksəldi
Müşahidə olunur ki, ən çoxu 500-ə yaxın proses işləyir, ona görə də server konfiqurasiyasını təkmilləşdirmək lazımdırmı? Hansı server konfiqurasiyasına yüksəltmək tövsiyə olunur?
Tətbiqinizin eyni vaxtda çoxlu sayda prosesləri işə salması lazım olduğunu fərz etsək və sistemin yüksək yükü idarə etmək üçün kifayət qədər resurslara malik olmasını təmin etmək istəyirsinizsə, burada bəzi xüsusi tövsiyələr var:
- CPU nüvələrinin sayı:Tətbiqinizin çox iş parçacığından faydalana bilməsindən asılı olaraq 8, 16 və ya daha çox nüvəli CPU-ya təkmilləşdirin.
- yaddaş ölçüsü:Tətbiqinizin yaddaş tələblərindən və işlədiyiniz proseslərin sayından asılı olaraq yaddaşı 32GB, 64GB və ya daha yüksəkə qədər artırın.
- Əlavə resurslar:Ümumi performansı və etibarlılığı artırmaq üçün xüsusi verilənlər bazası serveri və ya yük balanslaşdırıcısı kimi əlavə resurslar əlavə etməyi düşünün.
Yadda saxlayın ki, aparat konfiqurasiyanızı təkmilləşdirmək performans problemlərinin həlli deyil. Tətbiq kodunuzun, verilənlər bazası sorğularınızın və server konfiqurasiyalarınızın əlavə aparat resurslarından istifadə etmək üçün optimallaşdırıldığına əmin olun.
Ümid edirik ki, Chen Weiliang-ın bloqunda ( https://www.chenweiliang.com/ ) paylaşılan "Yüksək VPS Yükünü Necə Həll Etmək Olar? Performans Optimallaşdırma Metodları + CPU və Yaddaş Genişləndirilməsi üçün Tam Təlimat" məqaləsi sizə faydalı olacaq.
Bu məqalənin linkini paylaşmaqdan çəkinməyin: https://www.chenweiliang.com/cwl-31747.html
