Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
from fastapi.concurrency import run_in_threadpool
async def execute(data: DataRequest) -> DataResponse:
try:
result = await run_in_threadpool(sync_function, data)
return DataResponse(data=result)
except Exception as e:
return DataResponse(
error=str(e),
success=False,
)
В общем работает нормально. Для всех вызовов под капотом используется общий тредпул, всё работает предсказуемо.
Но потребовалось изменить количество запускаемых в пуле потоков (по умолчанию создается 40 воркеров).
Так как дело происходит с FastAPI, делается это через lifespan используя настройки anyio:
import anyio
@asynccontextmanager
async def lifespan(app: FastAPI):
limiter = anyio.to_thread.current_default_thread_limiter()
limiter.total_tokens = 100
yield
# если вдруг нужно вернуть обратно
limiter.total_tokens = 40
Зачем менять количество воркеров?
- уменьшить, если оперативки мало (один тред занимает ~8мб)
- увеличить чтобы выдержать нагрузку
Если есть предложения получше при тех же вводных - предлагайте😉
#async
Планы на весну: надеть кимоно из нежной ткани, летящее бельевое платье и раствориться в моменте…
сорочка #HAJKim 7200
кимоно #HAJKim 6900
кольца #Manila и #blabla 2000–3000
У нас можно быть нежной, строгой, чудной или расслабленной, ждём тебя в гости✨
Манила заманила. Часть 1.
Посетил по приглашению Mr. Bench M. Bello Международный индустриальный креативный саммит «Moscow-Manila».
Два дня в столице Филиппин, наверное, запомню навсегда (также как и этот пост, который переписываю третий раз).
14-часовой перелет — и ты уже на расстоянии 8000 км от дома в западной части Тихого океана.
+32 и -6 часов во времени.
Саммит организован частной компанией при поддержке ASEAN и Правительства Манилы. Среди участников были представители разных стран: России, США, Шотландии, Малайзии, Анголы и др.
10 спикеров представили свои доклады с презентациям. Среди докладчиков был торговый атташе посольства РФ, Артём Цинамдзгвришвили, который, кстати, в прошлой году дал интервью для нашего документального фильма «МГИМО 80».
Саммит был приурочен к Неделе моды в Маниле и здесь нашу страну представляла Татьяна Медина — продюсер компании MODA KOLOS из Ростова.
Филиппины сегодня — страна с активно развивающейся экономикой (33 место в мире), которая переходит от аграрной модели к экономике производства и услуг. Креативные индустрии занимают значительную долю ВВП (7%), а сами филиппинцы открыты к международным коллаборациям и творческим проектам, где Россия является желанным партнером.
Для меня была огромная честь представлять Россию на этом мероприятии. Мне понравилось, что было много участников, много прессы и тёплый приём, но самое главное — это возможность поделиться нашими культурными ценностями, экономическим опытом и показать что, Россия — страна возможностей.
Итоги поездки:
1. Выступил с докладом о креативный экономике России, её особенностях развития и об ArtMasters как драйвере креативных индустрий.
2. Дал интервью каналу NET25. Порекомендовал филиппинцам развивать креативную экономику, основываюсь на собственном производстве и своих культурных ценностях.
3. Пригласил молодого певца Giani поучаствовать в проекте ГОЛОС на Первом канале.
4. Предложил организовать в Чемпионате совместную компетенцию Фэшн-дизайнер, которая может пройти отдельным треком на английском языке.
5. Предложил организовать обмен творческими кадрами для стажировок, мастер-классов и совместной работы.
6. Предложил наши образовательные программы в онлайн режиме и очно с участием наших экспертов и членов Ассоциации.
7. Посетил памятник Пушкину в День рождения поэта.
Мы обязательно сделаем выводы из этой поездки и сформируем план дальнейших действий. Надеюсь, что эта командировка станет первым шагом на пути создания Международного чемпионата ArtMasters Open, который, будем надеятся, стартует до 2030 года.
Благодарю организаторов и лично Любарто Сартойо за приглашение.
#ArtMasters
#manila
#филиппины
#B2BASEAN