Serverless Computing nədir?(Serversiz hesablamalar)

Serverless Computing nədir?
İstifadəçilərin server infrastrukturu ilə məşğul olmadan tətbiqlər işlədə bilməsini təmin edən bulud əsaslı hesablama modelidir. “Serverless” termini, serverlərin olmadığı demək deyil — serverlər hələ də var, sadəcə onların idarəsi istifadəçi deyil, bulud provayderi (məsələn, AWS, Azure, Google Cloud) tərəfindən həyata keçirilir.
Sadə dillə desək:
Serverless modeldə sən yalnız kodu yazırsan və yükləyirsən – qalan hər şeyi (serverin işə düşməsi, miqyaslanma, texniki xidmət) provayder idarə edir.
Əsas xüsusiyyətləri:
- Avtomatik miqyaslanma: Tətbiqə olan tələbat artdıqca, sistem avtomatik olaraq genişlənir.
- Ödəniş yalnız istifadə əsasında: Serverin boş vaxtına görə deyil, yalnız istifadə etdiyin resurslara görə ödəniş edilir.
- Tətbiq koduna fokuslanma: Serverlərin konfiqurasiyası, təhlükəsizlik yamaları və infrastruktur texniki işləri sənin məsuliyyətində deyil.
- Hadisə əsaslı iş rejimi: Serverless funksiyalar (məsələn, AWS Lambda) hadisə baş verəndə (fayl yükləndikdə, API çağırışı olduqda və s.) işə düşür.

Serverless computing, ənənəvi serverlərin idarə edilməsini və saxlanmasını istifadəçilərdən uzaqlaşdıran bir bulud hesablama modelidir. Bu yanaşmada, istifadəçilər yalnız funksiyalarını yerinə yetirmək üçün lazım olan mənbələr üçün ödəniş edirlər və serverlərin fiziki və ya virtual idarə edilməsi ilə məşğul olmurlar. Serverless computing, bulud xidmət təminatçılarının serverləri idarə etməsi və şəbəkə, saxlama, hesablama gücü kimi mənbələri dinamik şəkildə təklif etməsi ilə mümkün olur.
Serverless computing-in əsas xüsusiyyətləri, onun daha çevik, asan miqyaslanan və resursları daha səmərəli idarə edən bir model olmasıdır. Bu yanaşma, xüsusilə mikroservislərin və funksional tətbiqlərin inkişafı üçün əlverişlidir, çünki serverlər haqqında düşünmək lazım olmur, yalnız tətbiqin funksiyalarına diqqət yetirilir.
Serverless Computing-in Əsas Xüsusiyyətləri:
- İdarəetməsiz serverlər:
Serverless computing modelində istifadəçilər serverlərin necə işlədiyini və onlara necə təyin edildiyini düşünmirlər. Bulud xidmət təminatçısı serverlərin idarə olunması, şəbəkə konfiqurasiyası, və resursların miqyaslanması kimi məsələləri öz üzərinə götürür.
- Miqyaslanma və Elastiklik:
Serverless computing, tətbiqin ehtiyaclarına uyğun olaraq avtomatik olaraq miqyaslanma təmin edir. Əgər daha çox hesablama gücü və ya yaddaş lazımdırsa, sistem bu resursları dinamik şəkildə təklif edir və tələbat azaldıqca resursları azaldır.
- Funkcional əsaslı xidmətlər:
Serverless computing əsasən funksional xidmətlərdən ibarətdir. İstifadəçilər yalnız funksiyalarını (məsələn, HTTP sorğuları, verilənlər bazası əməliyyatları) təqdim edirlər, bunlar isə server tərəfindən icra olunur. Funksiyalar qısa müddət ərzində yerinə yetirilir və iş bitdikdən sonra resurslar sərbəst buraxılır.
- Ödəniş yalnız istifadə edilən resurslara görə:
Serverless computing-də istifadəçilər yalnız yerinə yetirilən əməliyyatlar və istifadə edilən resurslar üçün ödəniş edirlər. Bu, ənənəvi server yanaşmalarından fərqli olaraq, istifadə olunmayan resurslar üçün ödəniş etməmək imkanı verir.

Serverless Computing-in Faydaları:
Sadəlik və Yüksək Performans:
Serverless modelində serverin idarə edilməsi, optimallaşdırılması və təmir edilməsi kimi vəzifələr bulud xidmət təminatçıları tərəfindən yerinə yetirilir. Bu, istifadəçilərə daha sadə tətbiqlər inkişaf etdirməyə və kodlarına daha çox diqqət yetirməyə imkan verir.
Azaltılmış Xərclər:
Serverless computing, istifadəçilərə yalnız ehtiyac duyduqları resursları istifadə etməyə imkan verdiyi üçün çoxlu resursların boşuna istifadə olunmasının qarşısını alır. Bu, xüsusilə az resurs tələb edən tətbiqlər üçün çox faydalıdır.
Yüksək Miqyaslanma Bacarığı:
Serverless computing avtomatik olaraq miqyaslanma təmin edir. Yüksək trafik tələb edən tətbiqlərdə serverlər yalnız tələb olunan zaman işləyir və resurslar tələb olunduqca artırılır. Bu, resurs israfını azaldır və tətbiqin daha səmərəli işləməsini təmin edir.
Tətbiq inkişafının sürətlənməsi:
SC, inkişafçıların yalnız funksiyaları inkişaf etdirməyə fokuslanmalarına imkan verir. Bu yanaşma, kodu sürətlə inkişaf etdirməyə və təkmilləşdirməyə kömək edir, çünki serverlər və infrastruktur məsələləri barədə düşünmək lazım deyil.
Serverless Computing-in Mənfi Cəhətləri:
- Soyuq Başlanğıc (Cold Start):
Serverless tətbiqlərinin başlanğıcda gecikmələri ola bilər. Bu “soyuq başlanğıc” problemi, bir funksiya çox az istifadə olunduqda və ya ilk dəfə çağırıldıqda meydana gəlir, çünki bulud provayderi funksiyanı başlatmadan əvvəl onu müvafiq resurslarla təmin etməlidir.
- Çətinliklər və Təhlükəsizlik:
Bu modeldə tətbiqin təhlükəsizliyi daha çətin ola bilər. İstifadəçilər serverləri birbaşa idarə etmədikləri üçün, tətbiqdə yaranan təhlükəsizlik boşluqları və zəifliklər provayder tərəfindən izlənilməlidir. Həmçinin, serverless tətbiqlərində resurslar daha çox avtomatik idarə olunduğundan, idarə etmə çətinləşə bilər.
- Məhdud Funksiya Vaxtı və Resurslar:
Serverless funksiyalarının icra müddəti müəyyən edilir və bu müddət adətən qısa olur. Uzun müddətli proseslər üçün SC əlverişli olmaya bilər, çünki bu tip tətbiqlər resursları daha uzun müddət tələb edə bilər.
Ən Yaxşı Serverless Computing Təminatçıları:
- AWS Lambda: Amazon Web Services (AWS) tərəfindən təklif edilən Lambda, SC üçün ən məşhur platformalardan biridir. Bu xidmət, istifadəçilərə funksiyaları yalnız istifadə edildiyi zaman işlətməyə və miqyaslamağa imkan verir.
- Google Cloud Functions: Google Cloud Platform-da SC təklif edən bir xidmət olan Google Cloud Functions, tətbiq funksiyalarını sadə şəkildə inkişaf etdirmək və işə salmaq üçün geniş imkanlar təqdim edir.
- Microsoft Azure Functions: Azure platformasında SC üçün Azure Functions xidmətini təqdim edir. Bu, həmçinin serverless tətbiqlər üçün müxtəlif inkişaf vasitələri və inteqrasiya imkanları təklif edir.
Nəticə:
Serverless computing, inkişafçılara və təşkilatlara resursların idarə edilməsi ilə bağlı qayğıları azaltmağa və yalnız tətbiqlərin funksional aspektlərinə diqqət yetirməyə imkan verir. Bu model, xüsusilə yüksək elastiklik və miqyaslanma tələb edən tətbiqlər üçün faydalıdır. Bununla yanaşı, bu modelin müəyyən mənfi cəhətləri, məsələn, “soyuq başlanğıc” və resurs məhdudiyyətləri mövcuddur, amma ümumilikdə bu yanaşma daha sadə və sərfəli həllər təqdim edir.
Daha ətraflı:
Serverless Computing: Bulud Texnologiyalarının Gələcəyi
bulud texnologiyaları və müasir tətbiq arxitekturaları haqqında öyrənmək üçün Alas Academy-nin Bulud Hesablama kurslarına nəzər yetirin.
Google Cloud və ya AWS rəsmi sənədləri bu sahədə lider və etibarlı mənbələr sayılır. Burada Google Cloud-un rəsmi bələdçisi daha sadə və aydın yazılmışdır.
Təklifim: Serverless Computing Explained – Google Cloud
