Django Unchained - поговорим

S3
На сайте с 29.03.2012
Offline
239
#31
Stek:
Я не прошу код, я прошу задачу описать, которая требует асинхронности

Вам уже сто раз приводили. любые блокирующие операции, например ожидание ответа - блокируют весь поток. если отправляешь в асинк - операция засыпает и разблокирует поток для остальных, пришел ответ, перехватывает управление и завершает выполнение. У нас могут в конце срока прийти 100 пользователей проходить онлайн-курс, причем система интегрирована с еще кучей сервисов. Если не асинхронить - начинаются тормоза по 10-15 секунд на ожидание ответа, в асинхронном - 1-2 секунды

Dreammaker
На сайте с 20.04.2006
Offline
554
#32
Sly32:
любые блокирующие операции, например ожидание ответа

Что вы имеете в виду под "ожидание ответа"? И почему это блокирующая операция?

S3
На сайте с 29.03.2012
Offline
239
#33
Dreammaker:
Что вы имеете в виду под "ожидание ответа"? И почему это блокирующая операция?

https://habr.com/ru/post/337420/

S
На сайте с 23.05.2004
Offline
294
#34
Sly32:
Вам уже сто раз приводили. любые блокирующие операции

Это не пример, это пустой треп. Как вижу, что вся асинхронность нужна в первую очередь агрегаторам, которые не имею сами информацию, а тянут ее с разных сервисов.

В остальном все спокойно решается uwsgi tasks/celery и подобными решениям.

Это просто мой личный сайт (https://phpdevs.com/) в моей подписи.
Dreammaker
На сайте с 20.04.2006
Offline
554
#35

Я немного не так спросил. Что такое условный event loop и рядом лежащее, я плюс-минус понимаю и всё это можно и на PHP реализовать. У нас даже проект один в полузапущенном состоянии есть на ReactPHP (точнее других библиотеках, который в основе его имеют).

Мне, скорее, интересно сама необходимость асинхонности в коде в рамках ваших задач и что там может быть асинхронного?

Асинхронность ради асинхронности? :)

S3
На сайте с 29.03.2012
Offline
239
#36
Stek:
Как вижу, что вся асинхронность нужна в первую очередь агрегаторам, которые не имею сами информацию, а тянут ее с разных сервисов.
В остальном все спокойно решается uwsgi tasks/celery и подобными решениям.

У нас прогресс постоянно паблишится в другие серверы, да, с использованием селери/кафки, но есть и запросы которые могут подвиснуть в ожидании ответа, из и приходится асинхронить

S3
На сайте с 29.03.2012
Offline
239
#37

Кстати возник вопрос - не совсем по джанге.

Кто нибудь работал с кафкой?

Можно ли перечитать топик, вручную указав оффсет? Нужно для тестирования, что бы постоянно не паблишить новые данные. Я пока читаю засинхроненую таблицу в свое БД, но не уварен, что это гуд, есть потери по скорости, хоть и гарантия доставки

S3
На сайте с 29.03.2012
Offline
239
#38

Оказалось, что кафка, да еще и в комплекте с АВРО - очень удобная и уомфортная вещь. Вынесли периодик таск в селери, настроили вычитку и паблиш - серьезно разгрузили систему.

Правда впереди замячил новый вызов - видеостриминговый портал - тут уже все серьезнее, хайлоад и прочие дела. Имел кто опыт работы с такими сервисами?

D
На сайте с 18.12.2015
Offline
147
#39

Заведи себе твитор.

Разработка и поддержка высоконагруженных проектов.
S3
На сайте с 29.03.2012
Offline
239
#40
danforth:
Заведи себе твитор.

Заведи себе енота и ему давай советы

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий