Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
📌Conducerea Comisiei Electorale Centrale a avut o întrevedere cu Anthony Banbury, Președintele Fundației Internaționale pentru Sisteme Electorale (IFES), în cadrul căreia au fost evaluate principalele realizări ale parteneriatului instituțional și discutate direcțiile de cooperare pentru perioada următoare.
💬În cadrul întrevederii au fost abordate și domeniile prioritare pentru sprijinul viitor, printre care consolidarea încrederii publice în instituțiile electorale, informarea corectă a cetățenilor în contextul noilor realități electorale, precum și combaterea manipulării informaționale, inclusiv prin dezvoltarea unui registru al dezinformării.
#CECMoldova#DemocrațiaContează#IFES
Քննարկվել է ՀՀ ԿԸՀ-ի և IFES-ի միջև համագործակցությունը
Ընտրական համակարգերի միջազգային հաստատության (IFES) նախագահ և գործադիր տնօրեն Էնթոնի Բանբըրին և IFES-ի հայաստանյան գրասենյակի ներկայացուցիչները հանդիպել են ՀՀ Կենտրոնական ընտրական հանձնաժողովի նախագահ Վահագն Հովակիմյանի հետ:
Անդրադարձ է կատարվել նաև առաջիկա համապետական և ՏԻՄ ընտրությունների նախապատրաստական աշխատանքներին:
#ԿԸՀ#IFES#ընտրություններ
👉Membrii și funcționarii Comisiei Electorale Centrale și directoarea Centrului de instruire continuă în domeniul electoral, au participat, în perioada 12–13 martie 2026, la un atelier de leadership electoral, desfășurat cu suportul IFES.
Instruirea a fost elaborată în baza curriculumului executiv IFES în leadership electoral (iEXCEL).
🖊Scopul instruirii a fost de a valorifica punctele forte ale managerilor din cadrul instituției în vederea consolidării independenței instituționale, îmbunătățirii capacității de organizare și gestionare a proceselor electorale în situații de criză, combaterii manipulării informaționale și promovării rezilienței instituționale.
#CECMoldova#DemocrațiaContează#iEXCEL#IFES#CICDE
Stimați reprezentanți ai mass-media,
Comisia Electorală Centrală are deosebita plăcere să vă invite la 𝐂𝐨𝐧𝐟𝐞𝐫𝐢𝐧ț𝐚 𝐑𝐞𝐠𝐢𝐨𝐧𝐚𝐥ă „𝐁𝐚𝐧𝐢𝐢 î𝐧 𝐏𝐨𝐥𝐢𝐭𝐢𝐜ă”, cu subiectul „𝐁𝐚𝐧𝐢, 𝐒𝐞𝐜𝐮𝐫𝐢𝐭𝐚𝐭𝐞 ș𝐢 𝐃𝐞𝐦𝐨𝐜𝐫𝐚ț𝐢𝐞: 𝐀𝐩ă𝐫𝐚𝐫𝐞𝐚 𝐢𝐧𝐭𝐞𝐠𝐫𝐢𝐭ăț𝐢𝐢 𝐞𝐥𝐞𝐜𝐭𝐨𝐫𝐚𝐥𝐞 î𝐧 𝐞𝐫𝐚 𝐝𝐢𝐠𝐢𝐭𝐚𝐥ă”, care se va desfășura în perioada 𝟖-𝟗 𝐢𝐮𝐥𝐢𝐞 𝟐𝟎𝟐𝟓 𝐥𝐚 𝐂𝐡𝐢ș𝐢𝐧ă𝐮.
Conferința va avea loc la 𝐂𝐡𝐢ș𝐢𝐧ă𝐮, 𝐑𝐞𝐩𝐮𝐛𝐥𝐢𝐜𝐚 𝐌𝐨𝐥𝐝𝐨𝐯𝐚, în perioada 𝟖-𝟗 𝐢𝐮𝐥𝐢𝐞 𝟐𝟎𝟐𝟓, la 𝐔𝐫𝐛𝐚𝐧 𝐁𝐮𝐬𝐢𝐧𝐞𝐬𝐬 𝐂𝐞𝐧𝐭𝐞𝐫 (bld. Ștefan cel Mare, 115/1). Lucrările 𝐩𝐫𝐢𝐦𝐞𝐢 𝐳𝐢𝐥𝐞 a Conferinței vor începe la 𝐨𝐫𝐚 𝟎𝟗:𝟎𝟎.
Detalii despre eveniment puteți găsi accesând adresa web https://moneyinpolitics.md
𝐀𝐓𝐄𝐍Ț𝐈𝐄! Accesul la eveniment a jurnaliștilor se va face în baza legitimațiilor de serviciu.
Vă așteptăm!
#CECMoldova#DemocrațiaContează#MiP#IDEA#CoE#IFES#WFD#IRI