@ysmodku · Post #5472 · 12.03.2023 г., 13:54
人物:#荧 作者:#nanami 下载:https://wwze.lanzoub.com/iUbBt0pxotah 来源:https://discord.com/channels/971945032552697897/995556191419764838/1083308602284048484
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
Пребарај: #nanami
@ysmodku · Post #5472 · 12.03.2023 г., 13:54
人物:#荧 作者:#nanami 下载:https://wwze.lanzoub.com/iUbBt0pxotah 来源:https://discord.com/channels/971945032552697897/995556191419764838/1083308602284048484
@ysmodku · Post #5474 · 12.03.2023 г., 13:54
人物:#雷电将军 作者:#nanami 下载:https://wwze.lanzoub.com/iGU8r0pxoy7e 来源:https://discord.com/channels/971945032552697897/995556191419764838/1083305931762311199
@ysmodku · Post #5260 · 05.03.2023 г., 03:51
人物:#钟离 作者:#nanami 下载:https://wwze.lanzoub.com/igdD80p9xj8f 来源:https://discord.com/channels/971945032552697897/995556191419764838/1081765397398831104
@cosplayuploadtest2 · Post #102265 · 23.03.2025 г., 03:09
Title: Nanami_Kawakami_川上奈々美,_Graphis_Limited_Editon_2016.05.21 Authors: #None Tags: #None#Graphis#Nanami_Kawakami_川上奈々美#Nanami#Kawakami#川上奈々美#Graphis#Limited#Editon #2016 #05 #21 recommendation: None TelegraphLinks:page-0-19
@cosplayuploadtest2 · Post #102113 · 23.03.2025 г., 03:01
Title: Nami_Nanami_七海那美,_Graphis_Limited_Edition_2025.01 Authors: #None Tags: #None#Graphis#Nami_Nanami_七海那美#Nami#Nanami#七海那美#Graphis#Limited#Edition #2025 #01 recommendation: None TelegraphLinks:page-0-44
@cosplayuploadtest2 · Post #102436 · 23.03.2025 г., 03:20
Title: Nanami_Miyakoshi_宮越虹海,_アイドルワン_I_One_サンプル版_ICONOCLASM Authors: #None Tags: #None#Nanami_Miyakoshi_宮越虹海#アイドルワン_I_One#Nanami#Miyakoshi#宮越虹海#アイドルワン#I_One#サンプル版#ICONOCLASM recommendation: None TelegraphLinks:page-0-19