Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
Green University Marks International Anti-Corruption Day
💬As part of December 9 — International Anti-Corruption Day, Green University conducted a survey among students and stuff to understand their perspectives on key issues.
#GreenUniversity#AntiCorruptionDay#Integrity#Transparency#Fairness#TogetherAgainstCorruption
✉️[email protected]
☎️ +998 55 512 00 77
📍Location
🌐Website | 📱Telegram | 📱Instagram | 📱LinkedIn | 🟥YouTube
December 9 -International Anti-Corruption Day
⚠️Corruption slows progress.
❗️Integrity, transparency, and the rule of law make societies stronger.
✅Only together can we fight corruption effectively.
#AntiCorruptionDay#Integrity#Transparency#RuleOfLaw
#StopCorruption#Compliance#GoodGovernance
✉️[email protected]
☎️ +998 55 512 00 77
📍Location
🌐Website | 📱Telegram | 📱Instagram | 📱LinkedIn | 🟥YouTube
Saylor's 21 Bitcoin Principles Revealed
Michael Saylor shares key insights on Bitcoin ownership:
1. Experts buy Bitcoin.
2. Critics don’t understand it.
3. Opinions shift from negative to positive.
4. Learning about Bitcoin is endless.
5. Bitcoin thrives on chaos.
6. It’s a win-win game.
7. True ownership lies in Bitcoin.
8. You earn Bitcoin as per your worth.
9. Invest only what you can afford to lose.
10. Bitcoin is the ticket out of the matrix.
11. Understanding wants and needs drive comprehension.
12. Expect your models to break.
13. Bitcoin is the cure for economic woes.
14. Choose Bitcoin over fiat.
15. Bitcoin is for everyone.
16. Think in Bitcoin terms.
17. Bitcoin will change you.
18. Stay vigilant against lies.
19. Respect Bitcoin or be a fool.
20. Never sell your Bitcoin.
21. Spread the love for Bitcoin.
#Bitcoin#Saylor#Crypto#Investment#Finance#Ownership#Learning#Economics#Innovation#DigitalAssets#MarketTrends#Blockchain#Wisdom#Prosperity#Opinions#Integrity#Wealth#Future#Leadership#Value
Fight Disinformation with AI
INAR .IA Labs & Technologies has raised $1.21M for its innovative SaaS platform aimed at automating the detection and verification of disinformation across online content. Scheduled to launch on December 18, 2024, this multimodal and multilingual tool is set to enhance online security and information integrity. More details can be found at TrueFlag.
#Funding#Technology#AI#SaaS#Disinformation#Verification#OnlineSafety#Security#Innovation#Automation#Multimodal#Multilingual#Integrity#Content#Platform#Launch #2024 #INAR#TrueFlag#Labs
«Привет, Мир»: Исторический снимок Земли с борта Orion на пути к Луне
Дата: 2026-04-04
Автор снимка: NASA, Reid Wiseman, Artemis II
Этот кадр, сделанный с борта космического корабля Orion «Integrity», запечатлел нашу прекрасную планету от полюса до полюса. На снимке - Земля, какой её видят астронавты миссии Artemis II, впервые за 50 лет направляющиеся к Луне.
Что видно на этом снимке?
· Африка и Пиренейский полуостров различимы на поверхности бледно-голубой планеты
· Солнце заходит за яркий край Земли в правом нижнем углу
· Северные сияния коронуют планету сверху справа и снизу слева
Кто и когда сделал этот снимок?
Командир экипажа Рид Уайзман сфотографировал Землю на второй день полёта (2 апреля), сразу после завершения маневра перехода на траекторию к Луне. Этот манёвр вывел Orion с околоземной орбиты и направил его к спутнику.
Исторический контекст:
Такое путешествие (облёт Луны с возвращением) человечество совершало в последний раз более 50 лет назад, во времена программы «Аполлон».
👩🚀Подписатьсяна канал.
#ArtemisII#Orion#Integrity#Земляизкосмоса#снимокЗемли#РидУайзман#астронавты#луна#космос#NASA#возвращениеналУну#пилотируемыйполет#африка#пиренейскийполуостров#северноесияние#южноесияние#история#космическаяфотография