Size: a a a

2020 October 19

RC

Ruslan Chekalov in PiterPy Idle
pragus
ты про gunicorn?
Про фласк, ганикорн и гевент вместе, да
источник

p

pragus in PiterPy Idle
Ruslan Chekalov
Про фласк, ганикорн и гевент вместе, да
ну gevent - мимими, а вот остальное - да
источник

RC

Ruslan Chekalov in PiterPy Idle
Ну я бы и его не рискнул использовать, там же вроде биллинг у ребят)
источник

AZ

Andrey Zakharevich in PiterPy Idle
pragus
ты про gunicorn?
просто им надо было запустить это все на pypy
источник

p

pragus in PiterPy Idle
Andrey Zakharevich
просто им надо было запустить это все на pypy
профайлер им нужен был в первую очередь
источник

p

pragus in PiterPy Idle
потому что нормальный профайлер им сразу бы рассказал где у них блочится, а где надо внимательно на алгоритмы посмотреть
источник

E

Eugene in PiterPy Idle
pragus
потому что нормальный профайлер им сразу бы рассказал где у них блочится, а где надо внимательно на алгоритмы посмотреть
вроде бы если ты давно пишешь всякий околобэкендный код и понимаешь, что делаешь, то должно быть очевидно, что cpu bound не надо класть в гринлеты/корутины, потому что всякие IO reactor-ы - это IO (привет КО).

> Решение: запускать их на отдельных gunicorn процессах 🥳

Ну типа, замели под ковёр и ок? 😀
источник

AZ

Andrey Zakharevich in PiterPy Idle
pragus
потому что нормальный профайлер им сразу бы рассказал где у них блочится, а где надо внимательно на алгоритмы посмотреть
а какой профайлер кстати тебе расскажет, что корутина жрала проц непрерывно, что плохо, а не с перерывами, что можно пережить?
источник

PR

Paul Rudnitskiy in PiterPy Idle
Ruslan Chekalov
какое говно только в проде люди не запускают
инстаграм и пинтерест вообще на джанге написан. И ничего, живут как-то
источник

PR

Paul Rudnitskiy in PiterPy Idle
до этого еще дожить надо
источник

p

pragus in PiterPy Idle
Andrey Zakharevich
а какой профайлер кстати тебе расскажет, что корутина жрала проц непрерывно, что плохо, а не с перерывами, что можно пережить?
вот это хороший вопрос. но на самом деле корутина вообще не должна жрать проц ))
источник

p

pragus in PiterPy Idle
Eugene
вроде бы если ты давно пишешь всякий околобэкендный код и понимаешь, что делаешь, то должно быть очевидно, что cpu bound не надо класть в гринлеты/корутины, потому что всякие IO reactor-ы - это IO (привет КО).

> Решение: запускать их на отдельных gunicorn процессах 🥳

Ну типа, замели под ковёр и ок? 😀
в их случае block profile помог бы
источник

E

Eugene in PiterPy Idle
Paul Rudnitskiy
инстаграм и пинтерест вообще на джанге написан. И ничего, живут как-то
до сих пор что ли?
источник

AZ

Andrey Zakharevich in PiterPy Idle
pragus
вот это хороший вопрос. но на самом деле корутина вообще не должна жрать проц ))
но кто-то же должен
источник

p

pragus in PiterPy Idle
Andrey Zakharevich
но кто-то же должен
если все ок, то оно должно быть более-менее равномерно размазано по приложению, либо вообще все должен жрать луп
источник

RC

Ruslan Chekalov in PiterPy Idle
Paul Rudnitskiy
инстаграм и пинтерест вообще на джанге написан. И ничего, живут как-то
я надеюсь что они это переписали уже 10 раз
источник

PR

Paul Rudnitskiy in PiterPy Idle
Eugene
до сих пор что ли?
пинтерест до сих пор насколько я помню
источник

PR

Paul Rudnitskiy in PiterPy Idle
год назад я читал историю о том, как они воевали с GC в python
источник

RC

Ruslan Chekalov in PiterPy Idle
источник

PR

Paul Rudnitskiy in PiterPy Idle
кончилось тем, что они его просто отключили и перезапускали процесс по расписанию. раз в 6 часов, если мне не изменяет память
источник