Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
❗️Il sottosegretario alla cultura Vittorio #Sgarbi è stato condannato alla pena pecuniaria di 2.000 euro per diffamazione ai danni di Virginia #Raggi. Il giudice monocratico di Roma ha disposto anche una provvisionale di 20mila euro in favore dell'ex sindaca di Roma
@UltimoraPolitics
https://x.com/SavinoBalzano/status/1986356173591773612?t=9mKQhyQM9sEH82K7RZxm3w&s=19
CROLLA UNA STRUTTURA CHE AVEVA 1200 ANNI A #ROMA: QUANDO CHIEDIAMO LE DIMISSIONI A #GUALTIERI?
Devo confessarvi che questa ossessiva insistenza sulle dichiarazioni della #Zakharova comincia a puzzarmi. Sì, per carità, sono state infelici perché pronunciate mentre un operaio era sotto le macerie. Ma insomma, in quanto a uscite infelici, la nostra classe politica non è che abbia molto da insegnare. Sergio Mattarella ha paragonato i russi al Terzo Reich: non saprei cosa sia peggio.
Eppure alcuni telegiornali, il TG Draghi in prima fila, non riescono più a trovare aggettivi da riservare alle parole della portavoce del ministro degli esteri russo: immonde, barbare, invereconde, e chi più ne ha più ne metta. E la miseria! Quando il coro è così univoco e assordante, c’è da interrogarsi a fondo.
Uscita infelice, vero (a mio avviso, più per il tempismo che per il merito), però noi siamo quelli che davano della “culona inchiavabile” alla cancelliera tedesca. Non pubblicamente, noterà qualcuno, va bene, ma l’uscita fu oltremodo “colorita”.
E allora perché si insiste tanto? Domandatevi — col massimo dell’onestà intellettuale che riuscite a portare — che cosa sarebbe accaduto se al Campidoglio ci fosse stata Virginia Raggi. Secondo voi, che cosa sarebbe successo? Guardate i giornali di qualche anno fa: alla #Raggi veniva addossata qualsiasi responsabilità, anche la più assurda, e le notizie di Roma erano sempre in prima pagina, ogni sera, anche sul TG Draghi. A Virginia si riservava sempre l’apertura e gli attacchi erano ferocissimi, notoriamente anche volgari.
È curioso che crolli la Torre dei Conti, un edificio che stava lì, dritto dritto, da 1200 anni, e nessuno abbia nulla da dire a chi ha commissionato i lavori di “restauro”. Quasi sette milioni di euro del #PNRR (a debito) per demolire un edificio storico nel cuore di Roma. Vi sembra accettabile? La vicenda peraltro appare controversa: chi abitava attorno all’edificio era preoccupato da tempo.
Dico, ma ve lo ricordate cosa accadde nel 2010 col crollo della Palestra dei Gladiatori a Pompei? Al governo c’era #Berlusconi e alla Cultura Sandro Bondi, quello delle poesie a Silvio, alla mamma, alla moglie e così via (certe gesta riecheggiano per l’eternità). Accadde un putiferio senza precedenti — giustamente, direi — eppure in quella circostanza le responsabilità, pur essendoci, apparvero indirette. A leggere la cronaca del tempo, emerge che piovve molto, che i materiali usati per i restauri del dopoguerra erano forse inadeguati, ad esempio. Eppure, com’è giusto che sia, l’esecutivo venne crocifisso.
Oggi si risparmia il Governo, ma soprattutto Roberto Gualtieri, che avrebbe la responsabilità politica di quanto accaduto.
Quel crollo è politicamente assai rilevante perché fa cadere una maschera d’ipocrisia davvero insopportabile: oltre a mostrare il miserrimo livello della nostra classe politica — che non merita nemmeno l’eredità della storia, del nostro passato, che si ribella a noi venendo giù — punta il dito anche su qualcun altro. Sì, perché a morire è stato un operaio, rumeno, di 66 anni.
Ogni giorno, stando alle stime ufficiali (e molti morti non vengono nemmeno registrati), tre persone escono di casa per non tornarvi: muoiono sul lavoro. Nel 2024 abbiamo avuto quasi seicentomila infortuni sul lavoro: molti ti distruggono la vita, ti lasciano invalido per sempre (e non si contano quelli domestici, solo perché dedicarsi alla casa non è “formalmente lavoro”). Poi ci sono le malattie professionali: tantissime. Si consideri, ad esempio, che alcuni stimano circa diecimila casi di tumore professionale ogni singolo anno. Molti di essi sono mortali. E non ci sono solo i tumori, purtroppo.
E dunque, per esempio, in merito alla morte di Octay #Stroici, operaio rumeno di 66 anni: che hanno da dire coloro i quali dovrebbero tutelare il mondo del lavoro, dei precari, dei più fragili? Che dice il sindacato?
https://x.com/SavinoBalzano/status/1986356173591773612?t=9mKQhyQM9sEH82K7RZxm3w&s=19
CROLLA UNA STRUTTURA CHE AVEVA 1200 ANNI A #ROMA: QUANDO CHIEDIAMO LE DIMISSIONI A #GUALTIERI?
Devo confessarvi che questa ossessiva insistenza sulle dichiarazioni della #Zakharova comincia a puzzarmi. Sì, per carità, sono state infelici perché pronunciate mentre un operaio era sotto le macerie. Ma insomma, in quanto a uscite infelici, la nostra classe politica non è che abbia molto da insegnare. Sergio Mattarella ha paragonato i russi al Terzo Reich: non saprei cosa sia peggio.
Eppure alcuni telegiornali, il TG Draghi in prima fila, non riescono più a trovare aggettivi da riservare alle parole della portavoce del ministro degli esteri russo: immonde, barbare, invereconde, e chi più ne ha più ne metta. E la miseria! Quando il coro è così univoco e assordante, c’è da interrogarsi a fondo.
Uscita infelice, vero (a mio avviso, più per il tempismo che per il merito), però noi siamo quelli che davano della “culona inchiavabile” alla cancelliera tedesca. Non pubblicamente, noterà qualcuno, va bene, ma l’uscita fu oltremodo “colorita”.
E allora perché si insiste tanto? Domandatevi — col massimo dell’onestà intellettuale che riuscite a portare — che cosa sarebbe accaduto se al Campidoglio ci fosse stata Virginia Raggi. Secondo voi, che cosa sarebbe successo? Guardate i giornali di qualche anno fa: alla #Raggi veniva addossata qualsiasi responsabilità, anche la più assurda, e le notizie di Roma erano sempre in prima pagina, ogni sera, anche sul TG Draghi. A Virginia si riservava sempre l’apertura e gli attacchi erano ferocissimi, notoriamente anche volgari.
È curioso che crolli la Torre dei Conti, un edificio che stava lì, dritto dritto, da 1200 anni, e nessuno abbia nulla da dire a chi ha commissionato i lavori di “restauro”. Quasi sette milioni di euro del #PNRR (a debito) per demolire un edificio storico nel cuore di Roma. Vi sembra accettabile? La vicenda peraltro appare controversa: chi abitava attorno all’edificio era preoccupato da tempo.
Dico, ma ve lo ricordate cosa accadde nel 2010 col crollo della Palestra dei Gladiatori a Pompei? Al governo c’era #Berlusconi e alla Cultura Sandro Bondi, quello delle poesie a Silvio, alla mamma, alla moglie e così via (certe gesta riecheggiano per l’eternità). Accadde un putiferio senza precedenti — giustamente, direi — eppure in quella circostanza le responsabilità, pur essendoci, apparvero indirette. A leggere la cronaca del tempo, emerge che piovve molto, che i materiali usati per i restauri del dopoguerra erano forse inadeguati, ad esempio. Eppure, com’è giusto che sia, l’esecutivo venne crocifisso.
Oggi si risparmia il Governo, ma soprattutto Roberto Gualtieri, che avrebbe la responsabilità politica di quanto accaduto.
Quel crollo è politicamente assai rilevante perché fa cadere una maschera d’ipocrisia davvero insopportabile: oltre a mostrare il miserrimo livello della nostra classe politica — che non merita nemmeno l’eredità della storia, del nostro passato, che si ribella a noi venendo giù — punta il dito anche su qualcun altro. Sì, perché a morire è stato un operaio, rumeno, di 66 anni.
Ogni giorno, stando alle stime ufficiali (e molti morti non vengono nemmeno registrati), tre persone escono di casa per non tornarvi: muoiono sul lavoro. Nel 2024 abbiamo avuto quasi seicentomila infortuni sul lavoro: molti ti distruggono la vita, ti lasciano invalido per sempre (e non si contano quelli domestici, solo perché dedicarsi alla casa non è “formalmente lavoro”). Poi ci sono le malattie professionali: tantissime. Si consideri, ad esempio, che alcuni stimano circa diecimila casi di tumore professionale ogni singolo anno. Molti di essi sono mortali. E non ci sono solo i tumori, purtroppo.
E dunque, per esempio, in merito alla morte di Octay #Stroici, operaio rumeno di 66 anni: che hanno da dire coloro i quali dovrebbero tutelare il mondo del lavoro, dei precari, dei più fragili? Che dice il sindacato?