Tetikleyiciler olmadan, bir Function Compute işlevinin harici bir olaya yanıt vermesi gerektiğinde bu işlevi konsol, SDK veya API aracılığıyla her seferinde manuel olarak çağırmanız gerekir. Tetikleyiciler bu süreci otomatikleştirir: Bağlı bir hizmetten gelen olay, tanımladığınız kurallarla eşleştiğinde olay kaynağı işlevi otomatik olarak çağırır. Bu sayede yoklama (polling) veya zamanlama mantığı yazmadan olay odaklı iş akışları oluşturabilirsiniz.
Tetikleyicilerin çalışma şekli
Function Compute olay odaklı bir model kullanır: Olay kaynağı üretici, işlev ise işlemci görevi görür. Her tetikleyici bir dizi eşleştirme kuralı içerir. Gelen bir olay bu kuralları karşıladığında, olay kaynağı ilişkili işlevi çağırır.
Bir işlevi yine de Function Compute konsolu, SDK veya API aracılığıyla doğrudan çağırabilirsiniz. Tetikleyiciler farklı bir amaca hizmet eder: Diğer Alibaba Cloud hizmetlerinden veya harici sistemlerden gelen olaylara dayalı olarak otomatik ve müdahalesiz çağrı yapmayı sağlarlar.
Tek bir tetikleyici yalnızca bir işlevi çağırır. Bir tetikleyiciyi birden fazla işleve yaymak için Function Compute'u CloudFlow ile birlikte kullanın. Tetiklenen işlevin bir CloudFlow iş akışı başlatmasını yapılandırın, ardından ek işlevleri bu iş akışı içinden çağırın. Çalışan bir örnek için demo bölümüne bakın.
Kullanım senaryoları
| Senaryo | Kullanılacak tetikleyici | Gerçekleşen işlem |
|---|---|---|
| OSS'e yüklenen görüntüleri işleme | OSS tetikleyicisi | Yeni yüklemeleri algılar ve işlevi çağırarak sonucu indirip işler ve depolar |
| Simple Log Service'e gelen günlükleri analiz etme | Simple Log Service tetikleyicisi | Günlük güncellemelerini algılar ve artımlı günlük verilerini tüketmek için işlevi çağırır |
| Belirli bir zamanlamada görev çalıştırma (örneğin, her saat veri toplama) | Zaman tetikleyicisi | İşlevi belirtilen aralıkta otomatik olarak tetikler |
Çağrı yöntemleri
Her tetikleyici işlevleri senkron veya asenkron olarak çağırır.
Senkron çağrı: Sonuç, işlev olayı işlemeyi tamamladıktan sonra döndürülür. Function Compute konsolundan bir işlev çağırmak, senkron çağrıya bir örnektir.
Asenkron çağrı: Sonuç, olay Function Compute'un dahili kuyruğuna yazıldıktan sonra döndürülür. Function Compute daha sonra olayı arka planda güvenilir bir şekilde işler.
Ayrıntılar için bkz. Senkron çağrılar.
Tetikleyici türleri
Tetikleyiciler, olay kaynaklarıyla entegrasyon şekillerine göre gruplandırılır.
İki yönlü entegre tetikleyiciler
Bu tetikleyicileri hem Function Compute hem de olay kaynağı hizmetinde yapılandırın.
| Tetikleyici | Çağrı yöntemi | Başvurular | |
|---|---|---|---|
| HTTP tetikleyicileri | Senkron ve asenkron | Genel bakış | |
| Zaman tetikleyicileri | Asenkron | Zaman tetikleyicileri | |
| OSS tetikleyicileri | Asenkron | OSS olay tetikleyicilerine genel bakış | |
| Simple Log Service tetikleyicileri | Senkron | Simple Log Service tetikleyicileri | |
| Alibaba Cloud CDN tetikleyicileri | Senkron | Alibaba Cloud CDN olay tetikleyicilerine genel bakış | |
| Tablestore tetikleyicileri | Senkron | Tablestore tetikleyicileri | |
| Simple Message Queue (eski adıyla MNS) konu tetikleyicileri | Asenkron | Simple Message Queue (eski adıyla MNS) konu tetikleyicileri | |
|
EventBridge tabanlı tetikleyiciler |
Simple Message Queue (eski adıyla MNS) kuyruk tetikleyicileri (EventBridge tabanlı) | Senkron ve asenkron | Simple Message Queue (eski adıyla MNS) kuyruk tetikleyicilerine genel bakış |
| ApsaraMQ for RocketMQ / Kendi kendine yönetilen Apache RocketMQ tetikleyicileri | Senkron ve asenkron | ApsaraMQ for RocketMQ tetikleyicileri | |
| ApsaraMQ for RabbitMQ tetikleyicileri | Senkron ve asenkron | ApsaraMQ for RabbitMQ tetikleyicileri | |
| ApsaraMQ for Kafka tetikleyicileri | Senkron ve asenkron | ApsaraMQ for Kafka tetikleyicileri | |
| ApsaraMQ for MQTT tetikleyicileri | Senkron ve asenkron | ApsaraMQ for MQTT tetikleyicileri | |
| Data Transmission Service (DTS) tetikleyicileri | Senkron ve asenkron | DTS tetikleyicileri | |
Tek yönlü entegre tetikleyiciler
Bu tetikleyicileri yalnızca Function Compute üzerinde yapılandırın, olay kaynağında değil.
| Tetikleyici | Çağrı yöntemi | Başvurular |
|---|---|---|
| API Gateway tetikleyicileri | Senkron | API Gateway tetikleyicileri ve Cloud-native API Gateway tetikleyicileri |
| ALB tetikleyicileri | Senkron ve asenkron | ALB tetikleyicileri |
Alibaba Cloud hizmetleri için olay tetikleyicileri
Bu tetikleyicileri Function Compute ve EventBridge üzerinde yapılandırın. Olay kaynağı hizmetinin kendisinde herhangi bir yapılandırma gerekmez.
| Tetikleyici | Çağrı yöntemi | Başvurular |
|---|---|---|
| Alibaba Cloud hizmetleri için olay tetikleyicileri | Senkron ve asenkron | Alibaba Cloud hizmetleri için olay tetikleyicilerini yapılandırma |