Asinxron Proqramlaşdırma – proqramın icrası zamanı gözləmə tələb edən əməliyyatları (I/O əməliyyatları, şəbəkə çağırışları, verilənlər bazası sorğuları və s.) bloklamadan yerinə yetirməyə imkan verən proqramlaşdırma modelidir. Bu model, Python-da async və await açar sözləri ilə dəstəklənir və ən çox FastAPI, aiohttp, və Quart kimi müasir web framework-lərdə istifadə olunur.
Ənənəvi (sinxron) proqramlaşdırmada bir funksiyanın nəticəsi alınana qədər proqramın digər hissəsi gözləyir. Bu, xüsusilə çoxsaylı istifadəçi sorğularının eyni anda gəldiyi web serverlərdə ciddi performans problemlərinə səbəb ola bilər.
Asinxron proqramlaşdırma isə bu əməliyyatları paralel və bloklamadan icra etməyə imkan verir. Nəticədə bir proses cavab gözləyərkən digəri icra olunur, bu da serverin məhsuldarlığını və cavab sürətini xeyli artırır.
Sinxron versiya:
import time
def hello():
time.sleep(2)
print("Salam")
hello()
print("Davam edir")
Nəticə:
(2 saniyə gözləyir)
Salam
Davam edir
Asinxron versiya:
import asyncio
async def hello():
await asyncio.sleep(2)
print("Salam")
async def main():
await hello()
print("Davam edir")
asyncio.run(main())
Bu versiyada eyni anda çoxlu asinxron funksiyalar işlədilə bilər, məsələn, API sorğularını eyni vaxtda icra etmək kimi.
IT sahəsini dərindən öyrənmək üçün kurslarımıza qoşulun. Ətraflı məlumat almaq üçün sorğu göndərin!