4.3.4. Прискорення та оптимізація роботи VPS (загальні рекомендації)

Оптимізація сайту (роботи його скриптів, сторінок) — найбільш пріоритетний варіант. Рекомендується починати саме з нього.

До цього варіанту належить не тільки тонке налаштування ПЗ, що йде в стандартному встановленні (веб-сервер Apache, MySQL, PHP), а й довстановлення різного роду акселераторів і зміна конфігурації ПЗ. Найпопулярніші варіанти:

  • Вимкнення невикористовуваних служб — за замовчуванням (особливо, якщо використовується попередньо встановлене ПЗ) запущено досить багато служб (демонів), які можуть ніяк не використовуватися вашим сайтом. Їх слід відключити — це звільнить деяку кількість ресурсів сервера.
  • Встановлення nginx — ставиться перед Apache і бере на себе обробку статичних файлів, знижуючи навантаження на сервер і збільшуючи швидкість віддачі таких файлів.
  • Встановлення акселератора PHP (наприклад, OPcache) — після встановлення цей сервіс кешує раніше скомпільований байт-код, тим самим прискорюючи виконання PHP-скриптів і знижуючи загальне навантаження на сервер.
  • Встановлення Memcache(d) — він дає змогу кешувати дані не на диску, а в оперативній пам’яті сервера. Що саме і як кешувати — залежить від скриптів сайту. Зазвичай налаштовують кешування найчастіших MySQL-запитів, проміжних результатів виконання PHP-скриптів, іноді — раніше створених сторінок. Він корисний тим, що за рахунок використання дуже швидкої оперативної пам’яті дані пишуться/віддаються практично миттєво.
  • Перемикання PHP у режим FastCGI або використання PHP-FPM — це помітно знижує навантаження на сервер і дає змогу працювати йому стабільніше.
  • Встановлення модуля PageSpeed — цей модуль від розробників Google не стільки знижує навантаження на сервер, скільки оптимізує дані, що віддаються відвідувачам сайту, тим самим прискорюючи його роботу. Однак налаштування цього модуля вимагає особливої уважності у використовуваних правилах, оскільки неправильне конфігурування може призвести до різних помилок.

Ще один варіант, який спеціально винесено окремо — повна відмова від використання веб-сервера Apache (повільний, «важкий» у плані споживання ресурсів) і його заміна на зв’язку nginx+PHP-FPM. Це дуже швидко, економічно, але вимагає досить серйозних навичок для грамотного налаштування такого рішення.

Останній спосіб вирішення питання — збільшення потужності сервера.

За умови, що спочатку для сайту було вибрано сервер адекватної конфігурації, це дійсно найостанніший спосіб. І до нього варто вдаватися тільки в крайніх випадках, коли всі інші себе вичерпали.

На відміну від попередніх способів, які вимагають один раз виконати роботи з оптимізації (за гроші або власними силами) і на довгий час «забути» про проблему, придбання потужнішого сервера — це навіть не вирішення проблеми, а самообман. Усунення симптомів, але не лікування хвороби. Рано чи пізно відвідуваність сайту підросте, контенту побільшає і знову доведеться витрачати ще більше грошей на новий, ще швидший сервер. Виконання ж дій з оптимізації дасть змогу не тільки скоротити витрати (навіть якщо доведеться оплатити послуги фахівців з оптимізації), а й домогтися кращої роботи сайту, ніж у випадку з простим нарощуванням потужностей сервера.

Зміст