Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
🔊Международные стандарты финансовой отчетности (МСФО) : квалификация ACCA ДипИФР (на русском языке)
📂Для кого предназначены курсы?
🔹 Профессионалов в области международных финансов, аудита и учета.
🔹 Молодых специалистов, только начинающих свой карьерный путь.
🔹 Слушателей, планирующих построить карьеру в области международных финансов, аудита и учета.
📖О программе
Эта программа позволит расширить ваши знания в области МСФО, понимать и применять основные принципы МСФО.
Узнайте основные концепции и принципы МСФО и получите международный сертификат ACCA.
💠 Подробнее
📞+998 71 239 03 10
#GraduateSchool#ACCA#DipIFR#Global
🔝Web-site |🔝Facebook |🔝Instagram | 🔝Youtube
🔊Sizlarni, “Moliyaviy hisobotning xalqaro standartlari (MHXS): ACCA DipIFR kvalifikatsiyasi” qisqa muddatli kurslariga taklif qilamiz.
👨💻 Dastur haqida
Ushbu dastur MHXS sohasidagi bilimlaringizni kengaytiradi, MHXSning asosiy tamoyillari haqida bilimlar o‘rgatiladi va qo‘llaniladi.
MHXSning asosiy tushunchalari va tamoyillarini bilib oling va xalqaro ACCA sertifikatini qo‘lga kiriting!
🇺🇿Batafsil
📂Приглашаемвас на краткосрочные курсы «Международные стандарты финансовой отчетности (МСФО): квалификация АССА ДипИФР»
📖 О программе
Эта программа позволит расширить ваши знания в области МСФО, понимать и применять основные принципы МСФО.
Узнайте основные концепции и принципы МСФО и получите международный сертификат ACCA.
🇷🇺Подробнее
📞+998 71 239-03-10
#GraduateSchool#ACCA#DipIFR#Global
🔝Web-site |🔝Facebook |🔝Instagram | 🔝Youtube
🔈Sizlarni, “Moliyaviy hisobotning xalqaro standartlari (MHXS): ACCA DipIFR kvalifikatsiyasi” qisqa muddatli kurslariga taklif qilamiz.
👨💻 Dastur haqida
Ushbu dastur MHXS sohasidagi bilimlaringizni kengaytiradi, MHXSning asosiy tamoyillari haqida bilimlar o‘rgatiladi va qo‘llaniladi.
MHXSning asosiy tushunchalari va tamoyillarini bilib oling va xalqaro ACCA sertifikatini qo‘lga kiriting!
🇺🇿Batafsil
📂 Приглашаем вас на краткосрочные курсы «Международные стандарты финансовой отчетности (МСФО): квалификация АССА ДипИФР»
📖 О программе
Эта программа позволит расширить ваши знания в области МСФО, понимать и применять основные принципы МСФО.
Узнайте основные концепции и принципы МСФО и получите международный сертификат ACCA.
🇷🇺Подробнее
📞 +998 71 239-03-10
#GraduateSchool#ACCA#DipIFR#Global
🌐Web-site |
✅Telegram |
✅Facebook |
🌐Instagram
4️⃣4️⃣4️⃣4️⃣
📣Международные стандарты финансовой отчетности (МСФО) : квалификация ACCA ДипИФР (на русском языке)
📂Для кого предназначены курсы?
🔹 Профессионалов в области международных финансов, аудита и учета.
🔹 Молодых специалистов, только начинающих свой карьерный путь.
🔹 Слушателей, планирующих построить карьеру в области международных финансов, аудита и учета.
📖О программе
Эта программа позволит расширить ваши знания в области МСФО, понимать и применять основные принципы МСФО.
Узнайте основные концепции и принципы МСФО и получите международный сертификат ACCA.
——
4️⃣4️⃣4️⃣
📣Moliyaviy hisobotning xalqaro standartlari (IFRS): ACCA DipIFR malakasi (rus tilida)
📂 Kurslar kimlar uchun?
🔹 Xalqaro moliya, audit va buxgalteriya bo'yicha mutaxassislar.
🔹 O'z faoliyatini endi boshlayotgan yosh mutaxassislar.
🔹 Xalqaro moliya va audit sohasida, shuningdek, buxgalteriya hisobida kasbiy o‘sishni rejalashtirganlar.
📖 Dastur haqida
Ushbu dastur IFRS bo'yicha bilimlaringizni kengaytirish hamda uning asosiy tamoyillarini tushunish va qo'llash imkonini beradi.
IFRSning asosiy tushunchalari va tamoyillarini bilib oling va xalqaro ACCA sertifikatini ega bo‘ling.
📞+998 71 239 0310
#GSBE#GraduateSchool#ACCA#DipIFR#Global
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
📣Международные стандарты финансовой отчетности (МСФО) : квалификация ACCA ДипИФР (на русском языке)
📂Для кого предназначены курсы?
🔹 Профессионалов в области международных финансов, аудита и учета.
🔹 Молодых специалистов, только начинающих свой карьерный путь.
🔹 Слушателей, планирующих построить карьеру в области международных финансов, аудита и учета.
📖О программе
Эта программа позволит расширить ваши знания в области МСФО, понимать и применять основные принципы МСФО.
Узнайте основные концепции и принципы МСФО и получите международный сертификат ACCA.
📞+998 71 239 0310; 71 239 0309
#GSBE#GraduateSchool#ACCA#DipIFR#Global
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
🌍 Markaziy Osiyo mintaqasi bo‘yicha ACCA vakillari bilan uchrashuv
🔍Batafsil
🇺🇸ENG
🇷🇺RU
#GraduateSchool#Memorandum#ACCA#Courses
Web-site| Telegram | Facebook |Instagram