Недавно делал быстрый прототип асинхронного приложения в котором требовалось вызывать много синхронного кода. Да, я знаю, что это не лучший дизайн, но нужно было быстрое решение на один процесс и без очередей. Поэтому я выполнял код в потоках.
Выглядело это примерно так:
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
#Vakant
Vakant lavozimlarga tanlov
"Oʻzbekneftgaz" AJ korporativ boshqaruvni mustahkamlash va transformatsiya qilishni qoʻllab-quvvatlash maqsadida mustaqil kuzatuv kengashi aʼzolarini jalb qilish uchun ochiq tanlov eʼlon qiladi. Bu tanlov "Oʻzbekneftgaz" AJ va uning tarmoq korxonalari uchun amal qiladi.
👉Batafsil
____________
Отбор на вакантные должности
АО «Узбекнефтегаз» объявляет открытый конкурс на привлечение независимых членов Наблюдательного совета для поддержки укрепления и трансформации корпоративного управления в АО «Узбекнефтегаз» и его структурные предприятия/
👉Подробнее
👉Bizni kuzating
web-sayt | instagram|telegram | youtube | facebook
#vakant
Vakant lavozim uchun tanlov
“O‘zbekneftgaz” AJ Biznesni istiqbolli rivojlantirish departamentiga Loyiha ofisi analitigi lavozimi uchun ochiq tanlov e’lon qiladi.
👉Batafsil
______
Конкурс на вакантную должность
АО «Узбекнефтегаз» объявляет открытый конкурс на должность аналитика Проектного офиса в Департамент перспективного развития бизнеса.
👉Подробно
👇Bizni kuzating:
web-sayt | instagram | telegram | youtube | facebook
#vakant
Vakant lavozim uchun tanlov
“O‘zbekneftgaz” AJ Biznesni istiqbolli rivojlantirish departamentiga Loyiha ofisi menedjeri lavozimi uchun ochiq tanlov e’lon qiladi.
👉Batafsil
_____
Конкурс на вакантную должность
АО «Узбекнефтегаз» объявляет открытый конкурс на должность менеджера Проектного офиса в Департамент перспективного развития бизнеса.
👉Подробно
👇Bizni kuzating:
web-sayt | instagram | telegram | youtube | facebook
#vakant
Vakant lavozim uchun tanlov
“O‘zbekneftgaz” AJ Biznesni istiqbolli rivojlantirish departamentiga Loyiha ofisi boshlig‘i lavozimi uchun ochiq tanlov e’lon qiladi.
👉Batafsil
_____
Конкурс на вакантную должность
АО «Узбекнефтегаз» объявляет открытый конкурс на должность начальника Проектного офиса в Департамент перспективного развития бизнеса.
👉Подробно
👇Bizni kuzating:
web-sayt | instagram | telegram | youtube | facebook
#Ish
#Vakant
2025-yil 28-yanvardan va 3-fevralga qadar “Olmaliq KMK” AJ 3-Mis boyitish fabrikasiga quyidagi yo‘nalishlar uchun onlayn rezyumelar qabul qilinadi:
➡️Kran mashinisti
➡️Konsentratorchi
➡️I toifali muhandis dasturchi (Avtomatlashtirish bo’yicha)
➡️I toifali avtomatlashtirilgan boshqaruv tizimlari muhandisi
➡️Oqova va suv ta’minoti uchastkasi katta ustasi
➡️Energiya tizimlarini avtomatlashtirilgan boshqaruv tizimi boʻyicha 1 toifali muhandis
➡️Asosiy elektrouskunalarning rele himoyasi va avtomatikasini sozlash bo’yicha 1-toifali muhandis
➡️Ta'mirlovchi-chilangar
➡️Yirik maydalash sexi boshligʻi oʻrinbosari
➡️Yanchish va flotatsiyalash sexi boshligʻi oʻrinbosari
➡️1-toifali muhandis-texnolog
➡️Reagentlar dozalovchisi
➡️Dispetcher
➡️G'alvirlovchi
➡️Yetakchi muhandis dasturchi (Avtomatlashtirish bo’yicha)
➡️Yetakchi sozlovchi muhandis
➡️Quyultirgich apparatchisi
➡️Sex energetigi
➡️Smena energetigi
➡️Tarmoq va nimstansiyalar energetigi
➡️Asosiy texnologik sexlarning elektruskunalarini sozlash guruhi energetigi
➡️Elektr jihozlarini ta’mirlash va texnik xizmat koʻrsatish boʻyicha elektromontyor
➡️Elektromexanik
➡️Elektrgazpayvandchi
➡️Yoqilgʻi moylash materiallari hisobini yuritish boʻyicha katta texnik
➡️Katta usta
➡️Nazorat o’lchov asboblari va avtomatika chilangari
➡️Boshqaruv pulti operatori
➡️Smena boshligʻi
➡️Reagent sexi boshligʻi
➡️Rentgen-spektral laboratoriyasi ta’mirlash guruhi boshlig’i
➡️Nazorat o’lchov asboblari va avtomatika sozlovchisi
➡️Mexanik
➡️To‘yintiruvchi mashinisti
➡️Nasos qurilmasi mashinisti
➡️Tegirmon mashinisti
➡️Konveyer mashinisti
➡️Ishlab chiqarish uchastkasi ustasi
➡️Almashtirish bo‘yicha usta
➡️Nazorat o’lchov asboblari va avtomatika ustasi
➡️Maydalovchi
➡️Gidrotransport bo’yicha sex boshlig’i o’rinbosari
📱Web-site|📱YouTube|📱Facebook|📱Telegram|📱Instagram|📱Twitter
#Ishga_taklif#vakant#tanlov
“Kasbiy ta’lim muassasalarining moddiy-texnik bazasini modernizatsiya qilish” loyihasini amalga oshirish guruhi menejeri lavozimiga nomzodlar tanlovi
Menejer lavozimiga talabgorlar uchun malakaviy talablar:
1. Oliy ma’lumot, kamida moliya, iqtisod, muhandislik yoki tegishli sohalar bo‘yicha bakalavr darajasi.
2. Kasbiy ta’lim sohasida loyihalarni boshqarish bo‘yicha kamida 10 yillik tajriba va yirik investitsiya loyihalari bilan ishlash va xalqaro moliya institutlari (XMI) bilan hamkorlik qilish tajribasi.
3. Kamida 2 ta o‘xshash loyihada ish tajribasi va ushbu loyihalarning muvaffaqiyatli yakunlanganligini tasdiqlash
4. Oliy ta’lim sohasida kamida 5 yillik ish tajribasi.
5. Xalqaro moliya tashkilotlari bilan ishlash tajribasi kamida 6 yil.
6. Davlat tili, rus va ingliz tillarini bilish,
7. Kompyuter texnologiyalaridan foydalanish tajribasi
Hujjat topshirish muddati: 20.02.2025
Taklif beruvchilar: [email protected] elektron manziliga
CV va obyektivka yuborishlari shart.
Batafsil:https://gov.uz/oz/edu/news/view/36592
Bizni kuzating
Facebook | Instagram | YouTube|Telegram