Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
🇺🇸 Texas residents were left stunned when a world-renowned chef who once catered events for George W. Bush was deported for crossing the border illegally in 1989. 😳
Sergio Garcia — a beloved figure in Waco known for his wildly popular Mexican food truck — was originally arrested in March over a two-decade-old deportation order.
The chef was loading Sergio’s Food Truck when he was approached by a man in plainclothes, while another man wearing a vest marked POLICE stood nearby, reports The Waco Bridge. 🚓🌮
“They asked me if I'm Sergio, and I said, ‘Yeah, I'm Sergio.’ Then they said, ‘You gotta come with us,’” Garcia recounted.
#ICE#Migrants#Texas#Waco
👂More on Trump's Ear ⚠️
📰 Conservatives Who Once Railed Against Federal Agents Now Applaud Them
For decades, right-wing populists have excoriated federal law enforcement, citing tragedies like Ruby Ridge and Waco as proof of government overreach. Now, under President Donald Trump, many of those same conservatives are cheering on federal agents as they crack down on immigration and unrest in cities like Minneapolis. The shift highlights how political allegiance shapes attitudes toward federal power—applauding crackdowns on adversaries while condemning them when they target allies.
From Enemies to Enforcers
Trump’s deployment of ICE, the Border Patrol, and the National Guard has transformed federal agents from bogeymen to heroes in the eyes of many conservatives. Critics say this reflects “motivated reasoning”—support for police action depends on who’s being targeted. When federal agents confront immigrants or minorities, conservative voices are often silent or supportive, but when they target anti-government activists, the outrage returns.
The Legacy of Ruby Ridge and Waco
Ruby Ridge and Waco became rallying cries for anti-government movements, fueling distrust of federal law enforcement. But today, with Trump in power, many right-wing activists have embraced federal agents as tools of law and order. The shift underscores how political power can reshape perceptions of authority.
Who’s the Enemy Now?
As federal agents raid homes and neighborhoods, the question is: Who decides when police action is justified? The answer seems to depend less on the law than on who’s in charge—and who’s being targeted.
#Trump#Conservatives#FederalAgents#Immigration#RubyRidge#Waco#LawAndOrder
📱American Оbserver - Stay up to date on all important events
🇺🇸