PHP улучшаем производительность: настройки PHP-FPM

แชร์
ฝัง
  • เผยแพร่เมื่อ 29 ธ.ค. 2024

ความคิดเห็น • 85

  • @Rymblnec1
    @Rymblnec1 ปีที่แล้ว +13

    незаслуженно мало подписчиков для такого внятного и полезного контента !
    Андрей, спасибо за труды

  • @fugu_dev
    @fugu_dev 3 ปีที่แล้ว +24

    Круто было бы увидеть от вас видео про паттерны проектирования или краткий курс по docker.

  • @ВячеславТараканов-б9и
    @ВячеславТараканов-б9и ปีที่แล้ว

    Наконец-то я нашел это! Везде, в т ч. хваленых "англоязычных источниках" не мог найти этой информации. Везде рассказывают про установку количества процессов так - "в зависимости от ваших задачь и ресурсов сервера". Блин ну ок, 16 гб оперативы, задача - спарсить весь интернет за 2 сек. Иии что? Сколько указывать? 20? 500? 1000000?
    А здесь вы всё подробно, с расчетами рассказали. Спасибо! Еще один плюс в копилку знаний.

  • @iamopk8987
    @iamopk8987 9 หลายเดือนก่อน

    оставлю 70ый комментарий под видео(жаль портить такую хорошую цифру как 69.. xD) Огромное спасибо за такое лаконичное и очень понятное объяснение! я за 20 минут понял то что не вкуривал до конца последние лет 5-7!!!!! низкий поклон!

  • @BehzodSabirov
    @BehzodSabirov 2 ปีที่แล้ว +1

    Огромное спасибо за ролик. Как раз мегодня столкнулся с проблемой, что phpfpm отваливался из недостатка процессов. Благодаря вам понял, как правильно настроить процессы, что и сделал. И заодно узнал, что soapui позволяет проводить нагрузочные тесты

  • @wbrframe
    @wbrframe 7 หลายเดือนก่อน +1

    Андрей, хочу отметить, что у вас очень качественный контент. Вам бы курс сделать по пыхе.

  • @altasdallas711
    @altasdallas711 3 ปีที่แล้ว +4

    Добрый день. Весьма полезное видео по настройке... Спасибо.. Было бы здорово увидить видео о работе web серверов, более абстрактное, без каких то примеров настроек.. Чтобы лучше разобраться с создаваемыми процессами, потребление памяти и cpu .. и варианты улучшения в случае роста трафика

  • @pep421
    @pep421 2 ปีที่แล้ว +1

    Спасибо за объяснения. Всё чётко и понятно.

  • @ИльяСилантьев-ц6х
    @ИльяСилантьев-ц6х 3 ปีที่แล้ว +11

    Почему так мало подписчиков? Это ж топ контент

    • @noebryce3386
      @noebryce3386 3 ปีที่แล้ว

      i know it is kinda randomly asking but do anyone know of a good site to watch new tv shows online ?

    • @lennoxtrey3109
      @lennoxtrey3109 3 ปีที่แล้ว

      @Noe Bryce I would suggest flixzone. You can find it by googling =)

    • @UserU-d2v
      @UserU-d2v 3 ปีที่แล้ว +3

      Потому что, без музыки и эффектов и прочей чепушни. У таких полно подписчиков и материал у них как мультик . Просто повторяешь за ними и что-то получается.
      А у Андрея Шестакова материал несет более осмысленный, информативный характер. Ты мало чему научился, но много чего осмыслил

    • @ВячеславТараканов-б9и
      @ВячеславТараканов-б9и ปีที่แล้ว

      Ну да. Как типо у инфоциган Гоши Дударя и Хауди Хо и многих других.

  • @kind1y
    @kind1y 2 ปีที่แล้ว +4

    Жаль, что автор забросил канал :"( Такой приятный и объясняет очень достойно.

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  2 ปีที่แล้ว +3

      Дела, дела, работа. Но есть ещё, что рассказать. Может узкие темы ещё подниму для обсуждения/урока. Благодарю за отзыв.

    • @kind1y
      @kind1y 2 ปีที่แล้ว

      @@АндрейШестаков-н6м это радует, ждём новых выпусков)

  • @leon1595
    @leon1595 3 ปีที่แล้ว +6

    Уважаемый автор, не забрасывай канал. Таких толковых видео на Ютубе очень мало.

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  3 ปีที่แล้ว

      Благодарю. Все будет, но видимо не раньше зимы, пока много работы.

  • @Andrey-gs2mm
    @Andrey-gs2mm ปีที่แล้ว

    Хороший видос. Довольно коротко и по делу. Лайк

  • @seoonlyRU
    @seoonlyRU 2 ปีที่แล้ว +1

    лукас от сео-гуру СЕООНЛИ

  • @rusk911
    @rusk911 3 หลายเดือนก่อน

    на последней работе внедрял RoadRunner, очень интересная штука. При должной сноровке получается просто ракета, потребляющая в 3 раза меньше ресурсов сервера и плюс ко всему практчески неубиваемая. Вместо традиционного подхода приложение на PHP демонизируется в бесконечный цикл и обменивается запросами и ответами PSR7 с фронтендом на GO.

  • @blook1413
    @blook1413 4 หลายเดือนก่อน

    Спасибо

  • @АндрейЗахватошин-к6ш
    @АндрейЗахватошин-к6ш 3 ปีที่แล้ว +2

    Очень полезный канал. Спасибо за информацию.

  • @asyrtmach
    @asyrtmach 2 ปีที่แล้ว

    Спасибо!

  • @volodya-nrg
    @volodya-nrg 2 ปีที่แล้ว

    Полезное видео, класс! Автору, спасибо!

  • @yaolegoleynik
    @yaolegoleynik 3 ปีที่แล้ว +2

    Спасибо большое! Все просто, понятно и по делу - как раз то что я и хотел узнать

  • @ИванДутов-р2б
    @ИванДутов-р2б ปีที่แล้ว

    Спасибо, выручил

  • @Rosalinnnnd
    @Rosalinnnnd 4 หลายเดือนก่อน

    А как вы определяете оптимальные значения параметров PHP-FPM для вашего сервера? Лично я, когда решил освоить веб-разработку, выбирал курсы для получения практических навыков. Рассматривал разные варианты, но выбрал Skypro из-за отличных отзывов. Курсы были настолько структурированы и понятны, что уже через пару месяцев до окончания обучения смог устроиться на работу с хорошей зарплатой))

  • @kvantstudio
    @kvantstudio 2 หลายเดือนก่อน

    Крутое видео

  • @vecheria
    @vecheria 2 ปีที่แล้ว

    Спасибо, очень дельно

  • @mikhail3147
    @mikhail3147 2 ปีที่แล้ว

    От души!

  • @otfly
    @otfly 3 ปีที่แล้ว

    В любом случае, спасибо за проффит

  • @degit
    @degit หลายเดือนก่อน

    Какой-то синтетический тест.
    sleep не эмулирует работу, процессор вообще не нагружает.
    А что произойдёт, если убрать sleep заменить его генерацией хэшей в цикле на туже секунду?
    У вас уже начиная с 5 потока всё резко замедлится, т.к. ядер всего 4, и даже если там гипертрединг есть он всё равно не справится уже с 9 потока.
    А где вы видели продакшен код, в котором просто так sleep раскидан?
    Это я ещё не сказал, что обычно потоки потребляют разное количество памяти.

  • @Jonstonrich
    @Jonstonrich 4 หลายเดือนก่อน

    Крутой.

  • @exhum4n274
    @exhum4n274 2 ปีที่แล้ว

    круто!

  • @reborn3212
    @reborn3212 3 ปีที่แล้ว

    спасибо за работу. мне понравилось видео

  • @zhartaunik
    @zhartaunik 2 ปีที่แล้ว

    Просто, доходчиво, но слегка длинновато. Можно сделать версию 2.0 и ужать до 4 минут.

  • @НиколайШироков-т7л
    @НиколайШироков-т7л 3 ปีที่แล้ว

    Большое спасибо за ваш труд!

  • @freelax947
    @freelax947 8 หลายเดือนก่อน

    На несчастных свободных 700mb RAM и 3 CPU поднастроил конфиг, сайт зажил новой жизнью

  • @IgorLukashevich
    @IgorLukashevich 3 ปีที่แล้ว

    PHP-FPM спасибо, круто объяснил

  • @abduqodirabdumalikov7507
    @abduqodirabdumalikov7507 2 ปีที่แล้ว

    👍

  • @PupaLupaZalu
    @PupaLupaZalu 2 ปีที่แล้ว

    Спасибо! Но мало, хочу еще. Есть блог?

  • @игорьмамоненко
    @игорьмамоненко 3 ปีที่แล้ว

    интересно, а если мы упакуем php-fpm в docker, то методика расчета предложенная не совсем подходит так как образ не изменяемый или собирать для каждой машины свой образ и заранее знать параметры хост машин, как найти золотую середину

    • @wolfganggahlnback2472
      @wolfganggahlnback2472 ปีที่แล้ว

      отдельно можно монтировать конфиги в docker-compose.yml аля php.ini

  • @ilyasavenok9051
    @ilyasavenok9051 5 หลายเดือนก่อน

    Добрый день! Спасибо за видео. Подскажите, как мне вывести конфиг, если php-fpm запущена как служба (php7.2-fpm.service)? Если просто ввести php-fpm -tt, то будет ошибка php-fpm: command not found

    • @0020-l1w
      @0020-l1w 4 หลายเดือนก่อน

      симлинк сделай: sudo ln -s /usr/sbin/php-fpm7.2 /usr/sbin/php7.2-fpm
      только пиши: php7.2-fpm -tt

  • @litvinenkow
    @litvinenkow ปีที่แล้ว

    не знал, что soapui так умеет

  • @0020-l1w
    @0020-l1w 4 หลายเดือนก่อน

    имхо можно сделать pm = ondemand и не парится... у меня просто реальный проект был на котором у меня вечно падал php-fpm из-за того что стоял pm = dynamic

  • @rank5011
    @rank5011 3 ปีที่แล้ว

    Я как понимаю расчет исходил из параметров локальной машины, с учетом того, что боевой сервер расположен на нашей(локальной) машине? А что касаемо внешнего сервера(хостинга) какие параметры мы можем получить о ядрах и тд и сможем ли мы применить такую же операцию на внешнем сервере? Или я не правильно понял видео-урок?

    • @zakharg
      @zakharg 3 ปีที่แล้ว

      Подключаешься по ssh к внешнему серверу и работаешь так же, как на видео

  • @Hose1021
    @Hose1021 3 ปีที่แล้ว +1

    Очень круто! спасибо! а можно узнать какие у вас настройки nginx и mysql (docker)?

  • @eleimt
    @eleimt 3 ปีที่แล้ว

    Поддерживаю канал.

  • @GexPlayerMD
    @GexPlayerMD 3 ปีที่แล้ว +6

    Отличные темы поднимаешь! А то кругом одна банальщина, по типу как настроить nginx + php-fpm. А вот глубже то никто особо и не копает. Жаль, что ты, похоже, забросил канал.

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  3 ปีที่แล้ว +2

      Благодарю за отзыв. Надеюсь, что ещё выйду в эфир. К сожалению, пока причина банальна - нехватка времени на фоне всех дел и забот. Спасибо!

  • @naillatypov1
    @naillatypov1 3 ปีที่แล้ว

    Если оперативной памяти мало - 512-1024 Мбайт - то лучше использовать ondemand.
    Это для тех - кто юзает бюджетные тарифы VPS )

  • @Daniil260620000
    @Daniil260620000 3 ปีที่แล้ว

    Бля... Спасибо большое за такой контент в нормальном виде!!

  • @KDenisG
    @KDenisG 4 หลายเดือนก่อน

    Количество процессов зависит больше не от памяти, а от количества ядер, а точнее даже потоков в процессоре. Нет никого смысла ставить 200 процессов, если у тебя 4 ядра. Хорошей практикой считается х2-х4 процессов по отношению к количеству ядер, если ставить больше, то производительность даже падает. Так же установка в статик повышает производительность, менеджеру не надо тратить время на создание процессов, а потом на утилизацию. Сам он по себе памяти ест мало, пусть всегда эта пачка процессов будет висеть в режиме ожидания это считанные мегабайты

  • @ABC-3-ABC
    @ABC-3-ABC 2 ปีที่แล้ว

    Подозреваю что увеличение кол-ва обработки запросов, так же потянет за собой увеличение расходов: оперативный памяти, нагрузку на цп и жёсткий диск... Выход так себе...

  • @eduardmart1237
    @eduardmart1237 2 ปีที่แล้ว

    А как это мониторить?

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  2 ปีที่แล้ว

      Как вариант можно использовать службу мониторинга pinba. Добавить логирования на уровне nginx. А также написать bash скрипт, который в фоновом режиме может анализировать статистику (количество, потребляемая память) по открытым php-fpm процессам.

  • @Alonso_Kinn
    @Alonso_Kinn 2 ปีที่แล้ว +1

    Сделайте , пожалуйста, выпуски для самых новичков в PHp !

    • @mrfriz
      @mrfriz ปีที่แล้ว

      Для новичков контента на TH-cam полно

  • @otfly
    @otfly 3 ปีที่แล้ว

    Немного пристранная задача, к программированию конечно имеет отношение, но в целом, скорее к архитектуре, имхо.

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  3 ปีที่แล้ว +4

      Благодарю за отзыв! В целом могу сказать, что эти знания необходимы PHP разработчику. Возможно только в очень крупных компаниях, где есть собственный батальон devOps`ов и администраторов, существует понятие "чистых программистов", которые занимаются непосредственно только кодингом, но реальность иная.

    • @otfly
      @otfly 3 ปีที่แล้ว

      Андрей, все норм. Я же не видел всех компаний и структур. Сужу исключительно своим опытом. В любом случае, такой опыт не будет лишним никому из ИТ.

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  3 ปีที่แล้ว

      @@otfly просто дополнил мысль. Спасибо.

  • @diso8850
    @diso8850 3 ปีที่แล้ว

    Спасибо, что думаете по поводу pm static? По идее должно дать максимальную производительность, т.к. не будет затрачиваться время на создание и удаление процессов

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  3 ปีที่แล้ว +4

      В целом - да, static может стать выигрышным вариантом при соблюдении как минимум условий:
      - памяти достаточно, чтобы держать постоянно N процессов на готове.
      - нагрузка на проект распределена равномерно и нет сильных пиков.
      - "отзывчивость" (время отклика) для проекта более критично, чем память.
      Мыслите верно, выбираемый вариант зависит от контекста и доступного железа. Static, dynamic, ondemand - любой из вариантов может подойти под определенный контекст. Тут нет однозначного простого ответа.

  • @ПолосьмакОлександр
    @ПолосьмакОлександр 3 ปีที่แล้ว

    cool))

  • @myyyp1
    @myyyp1 2 ปีที่แล้ว

    пи эйч пы 00:18

  • @MegaPushTV
    @MegaPushTV 2 หลายเดือนก่อน

    рАут...

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  2 หลายเดือนก่อน

      @@MegaPushTV уже писал где то, что route читает как рут и раут в американском английском и британском по разному. Лучше использовать раут, чтобы не путать с root. Все верно.

    • @MegaPushTV
      @MegaPushTV 2 หลายเดือนก่อน

      @@АндрейШестаков-н6м я думал как рОут, так приятнее звучит)

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  2 หลายเดือนก่อน

      @@MegaPushTV так точно не читается. Посмотрите транскрипции в американском и британском произношении.

  • @i.am.rossalex
    @i.am.rossalex ปีที่แล้ว

    Рут, бро, не раут

    • @АндрейШестаков-н6м
      @АндрейШестаков-н6м  ปีที่แล้ว +1

      Введите на youtube запрос route pronunciation - в британском английском произносится действительно рут, но в американском раут.
      Использую произношение route как раут намеренно, чтобы на русский слух не путать со словом root, которое тоже в программировании имеет свой смысл.

  • @PavelOmelchenko
    @PavelOmelchenko 3 ปีที่แล้ว +2

    Как же режет ухо от «раут». Сударь, route читается как рут

  • @ТимурТавеев-е1ы
    @ТимурТавеев-е1ы ปีที่แล้ว

    Спасибо!

  • @EscapefromWunderland-jz2yc
    @EscapefromWunderland-jz2yc 11 หลายเดือนก่อน

    Спасибо!