TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #425 · 20 апр.

Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках. Выглядело это примерно так: 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

Hashtags

Резултати

Пронајдени 3 слични објави

Пребарај: #globalentrepreneur

当前筛选 #globalentrepreneur清除筛选

​​✨System Analyst in Indonesia✨ Стажировка по системному анализу в стартапе. Это проект для специалистов в области информатики и вычислительной техники, которые хотят получить опыт в международной команде, работая в стартапе за границей Даты: 7 октября 2019- 22 ноября 2019 Требования: - английский язык не ниже upper-intermediate - возраст от 18 до 30 лет - навыки: UI Design, UX Design, writing - организационный взнос 20.000 рублей Условия: - предоставляется и покрывается проживание - питание - 1 раз в день https://aiesec.org/opportunity/1186374 (При регистрации на сайте указывайте Санкт-Петербург, отделение ИНЖЭКОН) Успей подать заявку: http://bit.ly/aiesecinspb #globalentrepreneur#aiesec#aiesecspb#internship#leadership#IT

​​✨Travel Blogger✨ Проект в сфере маркетинга и туризма в стартапе на Шри-Ланке На стажировке вы будете сотрудничать с отелями и туристическими агентствами с сфере морских круизов, путешествовать по острову и собирать фото- и видеоматериалы и разрабатывать контент для веб-сайта компании на основе собранных материалов. Даты: 1 октября 2019 - 31 декабря 2019 Требования: - возраст от 18 до 30 лет - английский не ниже upper-intermediate - навыки: image editing, writing - организационный взнос 20.000 рублей Условия: - предоставляется и покрывается проживание - жалованье - 15.000 шри-ланкийских рупий https://aiesec.org/opportunity/1171469 (При регистрации на сайте указывайте Санкт-Петербург, отделение ИНЖЭКОН) Успей подать заявку: http://bit.ly/aiesecinspb #globalentrepreneur#aiesecspb#internship#leadership#marketing#tourism

​​✨Marketing| Entrepreneur within Turkey✨ Предпринимательский проект в сфере маркетинга в стартапе в Турции🇹🇷 На стажировке вы будете разрабатывать контент для социальных сетей, создавать маркетинговую стратегию для увеличения продаж и поиска новых клиентов Даты: 17 ноября 2019 - 17 января 2020 Требования: - английский не ниже upper-intermediate - организационный взнос 20.000 рублей - участникам из России отдается предпочтение при отборе Условия: - предоставляется проживание - питание 1 раз в день https://aiesec.org/opportunity/1187550 Успей подать заявку: http://bit.ly/aiesecinspb #globalentrepreneur#ge#internship#leadership#aiesec#aiesecspb#marketing#turkey