Ваш VPS перевантажений і скоро згорнеться?
Починаючи з 4-ядерної конфігурації 16 ГБ, у цій статті детально аналізується, як вибрати відповідну кількість ядер ЦП і пам’яті, і надається вичерпний посібник з оптимізації продуктивності VPS.
Незалежно від того, чи це оптимізація бази даних, коригування додатків PHP чи оновлення апаратного забезпечення, у нас є конкретні пропозиції, які допоможуть вам знайти найкраще рішення, щоб ваш VPS працював швидше та стабільніше та попрощався з вузькими місцями!
Сподіваюся, це допоможе вам, щоб ваш VPS більше не був зайнятий, як шашлик!
VPS сильно завантажений. До якої кількості ядер ЦП і пам’яті потрібно оновити?

Припустимо, що ЦП конфігурації VPS складається з 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 XNUMX КБ, з яких лише XNUMX XNUMX КБ використовується як буфер.
Відповідно до top З виведення команди ви можете побачити, що є кілька ресурсомістких процесів:
- mariadbd (служба бази даних MariaDB):Займає багато ресурсів ЦП (143.1%).
- memcached:Займає певну кількість ЦП (7.7%).
- Кілька процесів php-cgi:Кожен з них займає певні ресурси ЦП і пам'яті.
Як вирішити проблему високого навантаження на VPS?
Рішення для високого навантаження можуть включати:
- Оптимізація бази даних:Якщо mariadbd займає багато процесора, вам може знадобитися оптимізувати запити до бази даних або збільшити ресурси сервера бази даних.
- Оптимізація додатків PHP:Оскільки існує кілька процесів php-cgi, які займають багато процесора та пам’яті, вам може знадобитися оптимізувати вашу програму або сценарій PHP, щоб зменшити споживання ресурсів.
- Обмежити кількість процесів:Розгляньте можливість використання чогось на кшталт worker_processes nginx або налаштування pm PHP-FPM, щоб обмежити кількість процесів.
- Розширення ресурсу:Якщо оптимізація все одно не відповідає вашим потребам, можливо, вам доведеться оновити VPS до конфігурації з більшою кількістю ядер або оперативною пам’яттю.
- Моніторинг і аналіз:Використовуйте вдосконалені інструменти моніторингу для аналізу використання системних ресурсів і виявлення вузьких місць.
- Балансування навантаження:Якщо трафік є частиною проблеми, подумайте про використання балансування навантаження, щоб розподілити запити між кількома серверами.
Перш ніж думати про оновлення свого 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 процесів, тож чи потрібно оновлювати конфігурацію сервера? До якої конфігурації сервера рекомендується оновити?
Якщо припустити, що вашій програмі дійсно потрібно запускати велику кількість процесів одночасно, і ви хочете переконатися, що система має достатньо ресурсів для обробки високого навантаження, ось кілька конкретних рекомендацій:
- Кількість ядер ЦП:Оновіть процесор до 8, 16 або більше ядер, залежно від того, чи зможе ваша програма скористатися перевагами багатопоточності.
- розмір пам'яті:Збільште обсяг пам’яті до 32 ГБ, 64 ГБ або більше залежно від вимог програми до пам’яті та кількості запущених процесів.
- Додаткові ресурси:Розгляньте можливість додавання додаткових ресурсів, наприклад виділеного сервера бази даних або балансувальника навантаження, щоб покращити загальну продуктивність і надійність.
Майте на увазі, що оновлення конфігурації апаратного забезпечення не є вирішенням проблем із продуктивністю. Переконайтеся, що ваш код програми, запити до бази даних і конфігурації сервера оптимізовані, щоб скористатися перевагами додаткових апаратних ресурсів.
Блог Hope Chen Weiliang ( https://www.chenweiliang.com/ ) поділився "Як вирішити високе навантаження на VPS?" Методи оптимізації продуктивності + Повний посібник із розширення пам’яті процесора» стануть вам у пригоді.
Ласкаво просимо поділитися посиланням на цю статтю:https://www.chenweiliang.com/cwl-31747.html
