Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 12399|Відповідь: 0

[Веб] php-fpm.conf Два ключові параметри

[Копіювати посилання]
Опубліковано 06.11.2014 09:35:52 | | |
  Це визначає з'єднання, надсилання та зчитування PHP-CGIЧас, 300 секунд достатньо, тож мояСервер504 з'являються рідкоВоротаПомилка тайм-ауту. Найважливіше —php-FPM.confзСтворити, що безпосередньо призведе до 502 Bad Gateway і 504 Gateway Time-out.
Давайте детальніше розглянемо деякі важливі частини php-fpm.confПараметр
Php-fpm.conf має два ключові параметри: один — «max_children», інший — «request_terminate_timeout».
У мене є два налаштування з значеннями «40» і «900», але це значення не є універсальним, його потрібно розраховувати самостійно.
    Ось як це розраховується:
      Якщо твояСлужбаІнструментПродуктивністьДостатньо добре, і ресурсів широкосмугового інтернету достатньо, PHPСценарійЯкщо немає циклів чи багів, можна просто встановити «request_terminate_timeout» на 0. 0s означає, що PHP-CGI працює постійно без обмеження за часом. Якщо ви не можете цього зробити, тобто у вашому PHP-CGI може бути певна помилка, або пропускна здатність недостатня, або інші причини можуть імітувати смерть PHP-CGI, тоді рекомендується призначити значення «request_terminate_timeout», яке можна встановити відповідно до продуктивності вашого сервера. Загалом, чим краща гра, тим вище можна встановити — 20-30 хвилин — це нормально. Оскільки мої серверні PHP-скрипти виконуються довго, деякі можуть займати більше 10 хвилин, тому я встановив 900 секунд, щоб PHP-CGI не вийшла з ладу і не з'явилася помилка 502 Bad gateway.

І як розраховується значення «max_children»? В принципі, чим більше — тим краще — php-cgiПроцесЯкщо їх більше, їх оброблять швидко, і в черзі буде мало запитів. max_children Загалом, за нормальних обставин сервер споживає близько 20 млн пам'яті на php-cgi, тому я встановлюю «max_children» на 40, 20M*40=800M, що означає, що весь PHP-CGI споживав менше 800M у піковий час, що менше, ніж моя ефективна пам'ять у 1 Gb. І якщо моя «max_children» встановлена меншою, наприклад 5-10, то php-cgi буде «дуже виснажливим», швидкість обробки також дуже повільна, а час очікування довший. Якщо запит довго не оброблявся, з'явиться помилка 504 Gateway Time-out, а php-cgi, що обробляється, зіткнеться з помилкою 502 Bad gateway, якщо виникнуть проблеми.




Попередній:Nginx php-fpm з'являється 502 рішення та досвід налаштування
Наступний:Завантаження пакету сумісності з офісною системою 2007 року
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com