AWS Lambda nedir?
AWS Lambda Amazon Web Services'ın bulut bilişim hizmetidir ve size şunları sağlar: Olaylara yanıt olarak kodlar Çalıştırın — bir sunucu kurmanıza veya yönetmenize gerek kalmadan.
Basitçe anlatmak gerekirse, kodunuzu ve Lambda'yı otomatik olarak yüklemeniz yeterli:
Gerekli kaynakları tahsis eder
Kodu çalıştırır.
Ölçeklemeyi yönetir
Ve maliyeti yalnızca gerçek yürütme süresine göre hesaplar
Resmi belgeler: AWS Lambda – Genel Bakış
AWS Lambda yürütme mimarisi
Çalışma zamanında Lambda, izole bir model kullanır Yürütme Ortamı Her fonksiyon için ayrı ayrı oluşturulan bir fonksiyon kullanılır.
Bu ortam aşağıdaki bileşenleri içerir:
Çalışma Zamanı Ortamı: Python, Node.js, Java, Go, C# vb. için yorumlayıcı veya JIT içerir.
İşleyici İşlevi: Bir olay meydana geldiğinde AWS'nin çağırdığı kodun ana giriş noktası.
Olay Nesnesi: S3, API Gateway, SNS, SQS veya Kinesis gibi bir kaynaktan veri girişi
Bağlam Nesnesi: Planlama, kaynaklar ve günlükler hakkında bilgi içerir
Resmi belgeler: Lambda Yürütme Ortamı ve Yaşam Döngüsü
AWS Lambda'da yaşam döngüsü
Her Lambda fonksiyonunun üç ana durumu vardır:
Başlatma Aşaması: Yeni bir yürütme ortamı oluşturma (Başlatma) ve modülleri yükleme
Çağırma Aşaması: Bir olaya yanıt olarak kod yürütme
Dondurma/Yeniden Kullanma Aşaması: Ortamın tekrar kullanıma hazır uyku modunda tutulması (Soğuk Başlatma'nın azaltılması)
Bu mekanizma şuna neden olur: Lambda milisaniyeler içinde yanıt veriyorÇünkü eğer sonraki istekler aynı Function'a ulaşırsa AWS önceki ortamı tekrar kullanır.
Belgeleme: Lambda Yaşam Döngüsü
Lambda ile Olay Odaklı Mimari
Lambda, genellikle olay odaklı bir mimari oluşturmak için diğer AWS hizmetleriyle birlikte kullanılır.
Örneğin:
S3 → Lambda: Dosya yüklendiğinde kodu çalıştır
API Ağ Geçidi → Lambda: Sunucusuz bir REST API oluşturma
DynamoDB Akışları → Lambda: Veri değişikliklerinde tetikleyici çalıştırma
CloudWatch → Lambda: Uyarılara otomatik yanıt
AWS Lambda'nın Temel Avantajları
1. Sunucuya gerek yok (Tam Yönetimli)
Herhangi bir sunucu, işletim sistemi veya altyapı kurmanıza veya yönetmenize gerek yok. AWS her şeyi otomatik olarak yapar.
Belgeleme: Lambda Yürütme Ortamı
2. Yalnızca kod yürütmeye göre ödeme yapın
Lambda ile yalnızca kodunuzun çalıştığı süre için ödeme yaparsınız.
Bu model Uygulama Başına Ödeme Özellikle değişken taleplerin olduğu projelerde çok fazla para tasarrufu sağlıyor.
Belgeleme: AWS Lambda Fiyatlandırması
3. Otomatik Ölçeklenebilirlik
Lambda, istek sayısına göre otomatik olarak ölçeklenir.
Aynı anda bin kullanıcı istekte bulunursa Lambda, herhangi bir ek yapılandırmaya gerek kalmadan gerekli kaynakları sağlayacaktır.
Belgeleme: Lambda'da Ölçekleme ve Eşzamanlılık
4. Farklı programlama dilleri için destek
Lambda, aşağıdakiler de dahil olmak üzere birden fazla dili destekler:
Python
Düğüm.js
Cava
C# (.NET)
Gitmek
Yakut
Ve hatta Özel Çalışma Zamanı Diğer diller için
Belgeleme: Lambda Programlama Dilleri
5. Diğer AWS hizmetleriyle tam entegrasyon
AWS Lambda, aşağıdakiler gibi diğer AWS hizmetleriyle tamamen entegredir: S3, DynamoDB, API Ağ Geçidi, SNS, SQS ve CloudWatch Birleştirildi.
Örneğin, Lambda fonksiyonunuzu S3'e bir dosya yüklendiğinde otomatik olarak çalışacak şekilde ayarlayabilirsiniz.
Belgeleme: AWS Lambda'yı Diğer AWS Hizmetleriyle Entegre Etme
AWS Lambda Nasıl Çalışır?
Lambda'da bir fonksiyonun yürütülmesine ilişkin adımlar şunlardır:
Kod Yazma (Fonksiyon) Desteklenen dillerden birinde
Olay Tetikleyicisinin Tanımı API Ağ Geçidi üzerinden HTTP İsteği veya DynamoDB veritabanında değişiklik gibi
Dağıtmak AWS Lambda Konsolunda
Otomatik ve ölçeklenebilir yürütme Olaylara yanıt olarak
Belgeleme: AWS Lambda Fonksiyonlarını Çağırma
AWS Lambda'nın yaygın kullanımları
Sunucuya ihtiyaç duymadan arka ucu çalıştırma
Gerçek Zamanlı İşleme
S3 veya DynamoDB'deki olaylara tepki verin
Görüntü veya video işleme
Sunucusuz API'ler Oluşturma Amazon API Ağ Geçidi
CloudWatch aracılığıyla otomatik izleme ve bildirimler
Projenizi AWS sunucusuz altyapısında çalıştırmayı planlıyorsanız, ITPiran bulut hizmetlerini kullanabilirsiniz 👇
ITPiran'dan AWS hizmeti satın alın
Lambda Teknik İpuçları ve Optimizasyonu
Bağımlılıkların boyutunu azaltarak fonksiyon yürütme süresini optimize edin.
İtibaren Çevre Değişkenleri Hassas parametreleri ayarlamak için kullanılır.
Günlükler ile Amazon CloudWatch Günlükleri Kontrol etmek.
İtibaren Lambda Katmanları Fonksiyonlar arasında kütüphaneleri paylaşmak için kullanılır.
Kullanarak Sağlanan EşzamanlılıkGecikme süresini azaltın (Soğuk Başlatma).
Belgeleme: AWS Lambda için Performans Optimizasyonu
AWS Lambda ve EC2 Karşılaştırması
| Özellik | AWS Lambda | Amazon EC2 |
|---|---|---|
| Sunucu yönetimi | Tamamen sunucusuz | Yönetim ve bakım gerektirir |
| Ödeme modeli | Kod yürütme süresine göre | Sunucunun ne kadar süredir açık olduğuna bağlı olarak |
| Ölçeklenebilirlik | Otomatik ve anında | Otomatik Ölçekleme Gerektirir |
| Uygun uygulama | Olay odaklı, API, otomasyon | Web siteleri, uygulamalar, veritabanları |
EC2 Belgeleri: Amazon EC2 Belgeleri
Çözüm
Hizmet AWS Lambda Sunucuya ihtiyaç duymadan hızlı, ölçeklenebilir ve düşük maliyetli kod yürütme için Amazon'un en iyi araçlarından biridir.
Lambda, gerçek zamanlı tepki ve yüksek esneklik gerektiren projeler için ideal bir seçenektir.
Projenizi AWS altyapısıyla başlatmayı planlıyorsanız bulut hizmetlerimizi kullanabilirsiniz.
ITPiran'dan AWS / Amazon Web Hizmetleri satın alın









