SAE'de bir iş şablonu oluşturarak görevleri belirli bir zamanlamaya göre otomatik olarak veya HTTP/HTTPS istekleri göndererek manuel şekilde tetikleyebilirsiniz. Bir görev tamamlandığında SAE ilgili hesaplama kaynaklarını hızla serbest bırakır.
Kullanım senaryoları
SAE İşler, gecikmeye duyarlı olmayan, eşzamansız ve çevrimdışı senaryolar için uygundur.
Zaman tabanlı işleme: Örneğin, her saat başında promosyon kuponları gönderme, günlük geliri güncelleme veya her gün etiket sayıları ve hedef kitle verilerini yenileme.
Toplu veri işleme: Örneğin, aylık istatistik raporları oluşturma veya gerçek zamanlı sonuç gerektirmeyen SMS mesaj durumlarını toplu halde güncelleme.
Eşzamansız gevşek bağlama: Örneğin, bir promosyonun durumunu yenileme, çevrimdışı bir sorguyu eşzamansız olarak çalıştırma veya iç iş mantığından bağımsız hale getirme.
CI/CD: CI/CD görevi tamamlandıktan sonra hesaplama kaynaklarını anında serbest bırakma.
Farklı senaryolarda SAE İşler ile kendi kendine yönetilen açık kaynak ürünlerin karşılaştırması için bkz. Kullanım senaryoları.
Ön koşullar
Bir ana hesap kullanıyorsanız Serverless App Engine ve EventBridge hizmetlerini etkinleştirmeli ve gerekli izinleri vermelisiniz.
Bir RAM kullanıcısı kullanmak istiyorsanız öncelikle aşağıdaki adımları tamamlamanız gerekir:
Ana hesabınızla EventBridge'i etkinleştirin.
Ana hesabınızla SAE İşleri etkinleştirin ve konsolda istendiğinde
AliyunServiceRoleForEventBridgeSendToSAEhizmete bağlı rolünü oluşturun.Ana hesabınızla RAM kullanıcısına
AliyunEventBridgeReadOnlyAccessiznini verin. Daha fazla bilgi için bkz. RAM kullanıcısına izin verme.
İş akışı
Bir görevi çalıştırmak için öncelikle bir iş şablonu oluşturmanız gerekir.
Görevler bir zamanlama kuralı veya HTTP/HTTPS isteği tarafından tetiklenir. Her tetikleme iş şablonuna dayalı olarak yeni bir görev oluşturur.
SAE her görevi çalıştırmak için yeni bir örnek oluşturur.
İş şablonu oluşturma
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda bir bölge ve ad alanı seçin ardından Create job template öğesini tıklayın.
-
Basic information sayfasında aşağıdaki parametreleri yapılandırın ve Next öğesini tıklayın.
Parametre
Açıklama
Job template name
İş şablonu için özel bir ad girin.
Namespace type
System-created bir ad alanı veya Select an existing namespace seçeneğini belirleyin.
Task deployment method
-
Select image deployment: Set image öğesini tıklayın. Uygulamanızı bir Demo image, My Alibaba Cloud images (aynı hesap altındaki bir ACR örneğinden), Other Alibaba Cloud account's private images (farklı bir hesap altındaki bir ACR örneğinden) veya bir Custom image (ACR dışı bir örnekten) kullanarak dağıtabilirsiniz. Ayrıca Use image from another job template seçeneğini de kullanabilirsiniz. Görüntü oluşturma, görüntüyü itme ve çekme süreci uygulama dağıtımıyla aynıdır. Daha fazla bilgi için bkz. Görüntü kullanarak uygulama dağıtma.
-
Code package deployment: Set code package for deployment öğesini tıklayın. Bir Stack language ve Code package type seçin ardından kod paketinizi yükleyin ve çalışma zamanı ortamını belirtin. Kod paketi oluşturma ve yükleme süreci uygulama dağıtımıyla aynıdır. Daha fazla bilgi için bkz. Kod paketi kullanarak uygulama dağıtma.
-
Shell script: Configure shell script öğesini tıklayın ve görevin yürütme betiğini yapılandırmak için sayfadaki örneğe bakın.
Instance type
-
Default: Kararlı performans sağlar. Bu örnekler önceliklendirilip kaldırılmaz bu da yüksek gerçek zamanlı performans ve kararlılık gerektiren senaryolar için uygun hale getirir.
-
BestEffort: Performans önemli ölçüde dalgalanabilir. Bu örnekler önceliklendirilip kaldırılabilir bu da gerçek zamanlı performans ve kararlılık konusunda katı gereksinimleri olmayan senaryolar için uygun hale getirir.
-
BestEffort First: Sistem BestEffort örneklerini zamanlamada önceliklendirir. Bir BestEffort örneği önceliklendirilirse sistem görev kesintisini önlemek için otomatik olarak bir Default örneğine geri döner.
Single instance specifications
Görev çalışırken tek bir örnek için CPU ve bellek teknik özelliklerini belirtin.
Number of concurrent instances
Herhangi bir anda eşzamanlı olarak çalışması gereken örnek sayısını belirtin.
-
-
Task settings sayfasında aşağıdaki parametreleri yapılandırın ve Next öğesini tıklayın.
Parametre
Açıklama
Task type
-
Periodic task
-
Cron expression: Görevin zamanlamasını tanımlar. Manuel olarak bir Cron ifadesi girebilir veya etkileşimli olarak oluşturmak için Use generation tool öğesini tıklayabilirsiniz.
-
-
One-time task (HTTP/HTTPS trigger)
-
Request type: Gerektiğinde görevi tetikleyen istek protokolünü seçin: HTTP, HTTPS veya HTTP&HTTPS.
-
Request method: Görevi tetikleyen bir veya daha fazla istek yöntemini seçin: GET, POST, PUT, PATCH, DELETE veya HEAD.
-
Security configuration: Açılır listeden bir güvenlik yapılandırma yöntemi seçin. Aşağıdaki seçenekler mevcuttur:
-
No configuration: Güvenlik yapılandırması gerekmez. Alınan tüm URL istekleri olaylara dönüştürülür ve EventBridge'e gönderilir.
-
Secure domain: Güvenli alan adlarını girin. Yalnızca bu alan adlarından gelen URL istekleri olaylara dönüştürülür ve EventBridge'e gönderilir. Diğer tüm istekler filtrelenir.
-
IP range: Bir IP adresi veya CIDR bloğu girin. Yalnızca belirtilen IP adresinden veya CIDR bloğundan gelen URL istekleri olaylara dönüştürülür ve EventBridge'e gönderilir. Diğer tüm istekler filtrelenir.
-
-
Concurrency policy
More settings seçeneğini genişletin ve bir eşzamanlılık ilkesi seçin.
-
Allow: Görevlerin eşzamanlı olarak çalışmasına izin verir. Zamanlanmış tetikleyici sürekli olarak yeni görevler oluşturur.
-
Forbid: Görevlerin eşzamanlı olarak çalışmasını yasaklar. Önceki görev henüz tamamlanmamışsa yeni bir görev oluşturulmaz.
-
Replace: Önceki görev henüz tamamlanmamışsa yeni görev onun yerine geçer.
Timeout period
Bir görev için maksimum çalışma süresini belirtin. Görev bu süreyi aşarsa sistem onu sonlandırmaya çalışır. Değer saniye cinsinden [0, 604800] aralığında olmalıdır. Varsayılan değer 3.600'dür.
Number of retries
Başarısız bir görevin yeniden deneme sayısını belirtin. Değer [0, 10] aralığında olmalıdır. Varsayılan değer 3'tür.
Enable task sharding
Enable Task Sharding anahtarını açın ardından Edit task sharding name panelinde ayarları yapılandırmak için Edit task sharding name öğesini tıklayın. Bu genellikle büyük veri iş yüklerinde parçaları yürütme için birden fazla istemci arasında eşit şekilde dağıtmak amacıyla kullanılır.
-
-
(İsteğe bağlı) Advanced settings sayfasında gerektiğinde ek özellikleri yapılandırın. Aşağıdaki açıklamalarda örnek olarak görüntü dağıtım yöntemi kullanılmıştır.
-
Create öğesini tıklayın ve iş şablonunun oluşturulmasını bekleyin.
Oluşturulan iş şablonunu görüntülemek için SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin. Ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
İşleri çalıştırma ve durdurma
Periyodik görev çalıştırma
Periyodik bir görev iş şablonunu oluştururken ayarladığınız Cron ifadesine göre otomatik olarak çalışır.
Tek seferlik görev çalıştırma
Tek seferlik bir görev bir HTTP veya HTTPS isteği tarafından tetiklenebilir. İstek protokolü ve yöntemi iş şablonunda yaptığınız yapılandırmaya bağlıdır.
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
Job Settings bölümünde public request URL veya internal request URL adresini alın. Genel internetten istek yapıyorsanız public request URL adresini kullanın.
-
Bir istek göndererek görevi tetikleyin. JSON formatında istek gövdesinde belirli parametreleri iletmek için POST yöntemini yapılandırabilirsiniz. Parametrelerle ilgili ayrıntılar için bkz. ExecJob.
-
Örnek 1: Çağrıda ortam değişkenlerini belirtme.
curl -d '{"Envs":[{"name":"aaa","value":"bbb"},{"name":"ccc","value":"ddd"}]}' -H 'Content-Type: application/json' <url> # Note: Replace <url> with the actual URL. -
Örnek 2: Çağrıda eşzamanlı örnek sayısını belirtme.
curl -d '{"Replicas":"3"}' -H 'Content-Type: application/json' <url> # Note: Replace <url> with the actual URL.
-
İşi manuel olarak çalıştırma
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
Job Template Details sayfasında sağ üst köşede Run job manually öğesini tıklayın.
İşi durdurma
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
Job Template Details sayfasında sağ üst köşede Stop job öğesini tıklayın ve ekrandaki talimatları izleyin.
Görev geçmişini yönetme
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
-
Sol gezinme bölmesinde Task history öğesini tıklayın. Task history sayfasında görev yürütme durumunu görüntüleyin ve gerektiğinde işlemler gerçekleştirin.
Bir görevi silmek için Actions sütununda Delete öğesini tıklayın ve ekrandaki talimatları izleyin.
Ayrıntıları görüntülemek için bir görev kimliğini tıklayarak Task record details sayfasını açın ve örnek durumunu görüntüleyin.
Görev olaylarını görüntüleme
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
Sol gezinme bölmesinde Event information öğesini tıklayın. Üstteki arama kutusunda olayları Source Name, Reason, Source Type veya Severity alanlarına göre arayabilirsiniz.
İş şablonunu düzenleme ve silme
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
Sağ üst köşede Edit job template veya Delete job template öğesini tıklayın ve ekrandaki talimatları izleyin.
Bir iş şablonunu sildiğinizde sistem bu şablondan oluşturulan tüm görev örneklerini şablonun oluşturma bilgileri dahil olmak üzere siler. Ayrıca sizin adınıza satın alınan ilişkili SLS Projesini siler ve günlük toplama özelliğini devre dışı bırakır.
Sürüm geri alma
Değiştirilmiş bir iş şablonu sorunlara neden olursa bunu önceki bir sürüme geri alabilirsiniz.
SAE Job Templates sayfasına gidin. Üst gezinme çubuğunda hedef bölgeyi ve ad alanını seçin ardından ayrıntılar sayfasını açmak için hedef iş şablonunu tıklayın.
Sağ üst köşede Roll back to historical version öğesini tıklayın.
Roll back to historical version sayfasında istediğiniz sürümü seçin ve OK öğesini tıklayın.