Size: a a a

2020 May 10

D

Dmitriy in PiterPy Meetup
Dima Boger
Ну что, ещё пару лет подождать что ли
Не пытаться делать из Питона Java вообще совсем.
источник

DB

Dima Boger in PiterPy Meetup
Я согласен с тем, что чтобы добавить в джанго типизацию придётся переписать джангу: там слишком много бездумной магии накручено
источник

S

Stan in PiterPy Meetup
Maxim Koltsov
А есть, интересно, истории успеха с растом на бэке?
источник

DB

Dima Boger in PiterPy Meetup
Я уже тут жаловался как я разбирался как там менеджеры собираются копированием методов
источник

MK

Maxim Koltsov in PiterPy Meetup
О, точно
источник

DB

Dima Boger in PiterPy Meetup
Это и правда очень дорого, наверное
источник

MK

Maxim Koltsov in PiterPy Meetup
Так ли нужна джанга...
источник

ВТ

Виктор Титов... in PiterPy Meetup
Eugene
Я почитал про airflow. А почему переходите с luidgi (про luidgi помню был на докладе Никиты). Просто на переколбашивание всех пайплайнов и инфры просто так не решаются, должны быть веские причины.
да, действительно переход с луиджи на эирфлоу - это большая работа, в основном, потому что лудживские таски сильно завязаны на сущности этого фреймворка. но тем не менее, мы посчитали, что эирфлоу будет лучше по следующим причинам:
1) в эирфлоу есть полноценный web UI, в котором можно много чего посмотреть и сделать например, для перезапуска таски нет нужды идти по ssh на сервер и вспоминать и писать команду в терминале - достаточно зайти в веб UI и очистить статус у нужных тасок/дагов для соответствующих итераций запуска
2) в эирфлоу есть мониторинг почти из коробки - надо лишь доставить рядом statsd и натравить на него airflow
3) одна из базовых сущностей эирфлоу - это оператор (или таска - если мы говорим про время выполнения), и в базовой поставке есть их достаточно много, включая оператор для работы с Amazon S3, MySQL, PostrgeSQL, Docker, и др. https://airflow.apache.org/docs/stable/_api/airflow/operators/index.html. и, хотя лично я использую обычно PythonOperator, можно часто повторяемые задачи выносить в самописные операторы (хотя в таком случае мы возвращаемся обратно к сильной привязке к фреймворку)
4) в эирфлоу, в отличии от луиджи, зависимости тасок в коде читаются очень наглядно и легко:
 extract_from_mysql >> transform_data >> load_to_clickhouse
источник

E

Eugene in PiterPy Meetup
Виктор Титов
да, действительно переход с луиджи на эирфлоу - это большая работа, в основном, потому что лудживские таски сильно завязаны на сущности этого фреймворка. но тем не менее, мы посчитали, что эирфлоу будет лучше по следующим причинам:
1) в эирфлоу есть полноценный web UI, в котором можно много чего посмотреть и сделать например, для перезапуска таски нет нужды идти по ssh на сервер и вспоминать и писать команду в терминале - достаточно зайти в веб UI и очистить статус у нужных тасок/дагов для соответствующих итераций запуска
2) в эирфлоу есть мониторинг почти из коробки - надо лишь доставить рядом statsd и натравить на него airflow
3) одна из базовых сущностей эирфлоу - это оператор (или таска - если мы говорим про время выполнения), и в базовой поставке есть их достаточно много, включая оператор для работы с Amazon S3, MySQL, PostrgeSQL, Docker, и др. https://airflow.apache.org/docs/stable/_api/airflow/operators/index.html. и, хотя лично я использую обычно PythonOperator, можно часто повторяемые задачи выносить в самописные операторы (хотя в таком случае мы возвращаемся обратно к сильной привязке к фреймворку)
4) в эирфлоу, в отличии от луиджи, зависимости тасок в коде читаются очень наглядно и легко:
 extract_from_mysql >> transform_data >> load_to_clickhouse
понятно. спасибо. действительно было бы интересно послушать про него доклад
источник

ВТ

Виктор Титов... in PiterPy Meetup
Eugene
понятно. спасибо. действительно было бы интересно послушать про него доклад
а что было бы интереснее всего послушать про эирфлоу?
источник

E

Eugene in PiterPy Meetup
Виктор Титов
а что было бы интереснее всего послушать про эирфлоу?
как используется в реальных условиях, какие плюсы, минусы, сложности. что легко и что сложно с ним сделать. в общем, что-то такое, чего не прочитаешь в документации :)
источник

p

pragus in PiterPy Meetup
Maxim Koltsov
А есть, интересно, истории успеха с растом на бэке?
Есть )
источник

p

pragus in PiterPy Meetup
Это немного другое
источник

S

Stan in PiterPy Meetup
pragus
Это немного другое
Почему? Rust, на беке
источник

p

pragus in PiterPy Meetup
Stan
Почему? Rust, на беке
Там люди упёрлись в gc. Почти каждый релиз go улучшают gc. Понятно, что переписать на rust интереснее чем просто взять новый релиз :)
источник

AK

Alex 🌼 Karpinsky in PiterPy Meetup
pragus
Там люди упёрлись в gc. Почти каждый релиз go улучшают gc. Понятно, что переписать на rust интереснее чем просто взять новый релиз :)
Вот интересно насколько теоретически можно улучшить gc, если он единственный способ освободить память в языке? У меня приложение которое занимается обработкой картинок, работает на CPython. Изображения могут быть огромными. Я в нем тщательно слежу, чтобы не было лишних ссылок на объекты во время обработки. Пробовал запустить на pypy, результат был ожидаем: за две минуты стресс-теста приложение выжирало всю доступную память и падало. Существует ли хотя бы теоретическая вероятность запускать такое в средах с gc?
источник

AK

Alex 🌼 Karpinsky in PiterPy Meetup
Alex 🌼 Karpinsky
Вот интересно насколько теоретически можно улучшить gc, если он единственный способ освободить память в языке? У меня приложение которое занимается обработкой картинок, работает на CPython. Изображения могут быть огромными. Я в нем тщательно слежу, чтобы не было лишних ссылок на объекты во время обработки. Пробовал запустить на pypy, результат был ожидаем: за две минуты стресс-теста приложение выжирало всю доступную память и падало. Существует ли хотя бы теоретическая вероятность запускать такое в средах с gc?
Подумал, что можно на более низком уровне освобождать память: объекты для питона будут живыми, но нерабочими. Огромные куски памяти будут освобождены, останется мелкий мусор
источник

AK

Alex 🌼 Karpinsky in PiterPy Meetup
Но это вообще ручное управление получается, даже не подсчет ссылок )
источник

S

Stan in PiterPy Meetup
pragus
Там люди упёрлись в gc. Почти каждый релиз go улучшают gc. Понятно, что переписать на rust интереснее чем просто взять новый релиз :)
А ты видел результаты? Понятно, что мотивация переписать была именно в gc, но там очень здорово всё ускорилось, так что вполне успех
источник

E

Eugene in PiterPy Meetup
pragus
Там люди упёрлись в gc. Почти каждый релиз go улучшают gc. Понятно, что переписать на rust интереснее чем просто взять новый релиз :)
они вроде писали в комментах, что новый релиз go им бы не помог.
источник