Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
SHE
I met a girl beautiful and bold,
She was much sweeter then i was told.
Whenever i saw her she had blushing smiles,
Which preserved her secret files.
Her looks gave me breathless days and sleepless nights,
Without her i was like a dark room without any lights.
There were many similarities between us,
I think ,thats the reason why she became my crush.
She is very afraid of losing me,
But i'll tell you,she is the girl for whom i will be bending on my knee.
There is much more to say,
But i think i should end it up for today.
#review#adi
Day & Night
This is a tale about "day" and "night",
who loves each other with all their might.
Both of them have qualities which are extremely differential,
yet the amount of passion they share is just unconditional.
Their love is too unlucky and cruel,
the only time they meet is for a duel.
Evenings are just a glimpse of their togetherness,
without each other they are always surrounded by emptiness.
Staring at the pain in their lover's eyes,
trying to comfort each other with their fake smiles,
the level of sadness is so high that sometimes even their pain cries.
Yet they somehow find hope in their despair,
that tomorrow they wont shed any tear,
but when the eyes meets their pair,
they weep just like a kid does for a bear.
Even the mornings need night to hear them cry,
Even the nights need morning to motivate them to try.
But at last in the world full of similar lovers,
they will always stand in corner with their feelings covered.
#adi#review#day&night
HORROR
It was a chilling night,
Though the moon was shining very bright.
I was in a village in Bihar,
Lying on the terrace and admiring the brightest star.
Then suddenly, I got some strong vibes,
That someone was staring me with his cruel eyes.
I was on my legs in a fraction of a second,
Searching for the person every corner and end.
But he was nowhere to be seen,
Again I lied on the terrace and soon went into a deep dream.
While I was sleeping,
I could make it out that somebody sitting beside me was weeping.
As soon as I opened my sleepy eyes,
I could no longer hear the cries.
This time I was pretty sure of his presence,
So I stood up with my angry face which was lacking in patience.
I walked to the centre and cried,
"If you dare to test my patience then come in front and try".
As soon as I finished saying this,
A man appeared in front ,crawling on his elbows and knees.
My angry eyes soon filled up with tears for mercy,
But he didn't care and kept on moving with eyes full of fiery.
My heartbeat was growing faster,
I became more depressed after hearing his wicked laughter.
I was so frightened that I fainted under the moon,
When I opened my eyes I was in my dad's room.
After asking a bunch of questions,
I got to know that my dad bought me down and indirectly saved me from the situation.
I have never said anyone about that dreadful night,
Due to which I am still afraid to go alone on terrace in bright daylight.
#adi#review#horror