Nginx + PHP-FPM — оптимальна конфігурація для виробництва
Відгуків: 13Налаштую Nginx + PHP-FPM: worker_processes, FastCGI cache, SSL/TLS, захист від DoS. TTFB < 100 мс. Від 1 500 грн.
Послуга
Налаштування Nginx і PHP-FPM під реальне навантаження
Найпоширеніша причина помилок під навантаженням — не слабкий сервер, а кількість воркерів, виставлена при встановленні й ніколи не перерахована. Замало — відвідувачі стоять у черзі й отримують тайм-аути. Забагато — сервер вичерпує пам'ять, і система починає вбивати процеси.
Що входить
- розрахунок кількості PHP-воркерів під ваш обсяг пам'яті — з попереднім заміром, скільки реально споживає один процес на вашому сайті;
- вибір режиму керування процесами під профіль навантаження;
- тайм-аути, ліміти завантаження, розміри буферів;
- кеш байткоду PHP — часто вимкнений або з замалим обсягом;
- віддача статики, стиснення, HTTP/2, keepalive;
- за потреби — кешування сторінок на рівні веб-сервера.
Чому не можна взяти конфігурацію з інтернету
Бо значення в статтях розраховані під інший обсяг пам'яті. На важкому магазині один воркер може споживати втричі більше за типове значення — і конфігурація, що добре працює в автора статті, у вас призведе до падінь.
Що на виході
Конфігурація під ваш сервер із поясненням, чому саме такі значення, і орієнтир: на якому обсязі відвідувачів поточної конфігурації перестане вистачати. Плюс заміри до і після — щоб бачити ефект, а не вірити в нього.
Практичний чекліст із поясненнями — у статті PHP-FPM та Nginx tuning. Порядок діагностики, якщо причина невідома — чому сервер повільний. Суміжне: налаштування бази, Redis.
До і після
- Під навантаженням сайт віддає помилки: кількість воркерів не перераховували з моменту встановлення
- Замало воркерів — черга й тайм-аути; забагато — бракує пам’яті, і система вбиває процеси
- Конфігурацію взято зі статті, а її значення розраховані під чужий обсяг пам’яті
- Кількість PHP-воркерів розраховано під вашу пам’ять — після заміру, скільки споживає один процес
- Налаштовано тайм-аути, ліміти завантаження, буфери, кеш байткоду PHP, стиснення, HTTP/2 і keepalive
- Заміри до і після, пояснення кожного значення й орієнтир, коли конфігурації перестане вистачати
Відгуки (13)
5.0Сервер тепер тримає пікове навантаження без жодних гальм, TTFB мінімальний. Налаштування Nginx + PHP-FPM на висоті.
Звернувся за послугою «Налаштування Nginx + PHP-FPM». Сервер ішов у swap. Окремо порадували акуратністю в коді. Звернусь ще раз із наступними задачами.
Замовляв «Налаштування Nginx + PHP-FPM» — сайт гальмував під навантаженням. Видно, що людина глибоко розуміється на OpenCart. Ціна відповідала обсягу, прихованих доплат не було. Тепер сплю спокійно за свій сайт.
Брав «Налаштування Nginx + PHP-FPM» для свого проєкту. Були таймаути PHP-FPM на піках. Ціна відповідала обсягу, прихованих доплат не було. Рекомендую без вагань.
Залишаю відгук про «Налаштування Nginx + PHP-FPM». Сервер ішов у swap. Видно, що людина глибоко розуміється на OpenCart. Зробили бекап перед роботами — приємно, що подбали.