Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Container Apps'te Azure İşlevleri'ni dağıttığınızda platform, İşlevler tetikleyici parametrelerinizi otomatik olarak KEDA ölçeklendirme yapılandırmalarına çevirir. Bu çeviri, İşlevlerinizin çeşitli olay kaynaklarından gelen iş yüküne göre uygun şekilde ölçeklendirilmesini sağlar.
Ölçeklendirme eşlemeleri nasıl çalışır?
Container Apps üzerinde Azure İşlevleri, olay kaynaklarını izlemek ve işlev uygulamalarınızı ölçeklendirmek için KEDA kullanır. Platform otomatik olarak:
İşlev parametrelerini çevirir: İşlevler tetikleyici yapılandırmanızı (kaynak
host.jsonveya tetikleyici öznitelikleri) KEDA ölçeklendiricisi meta verilerine dönüştürür.Ölçeklendirme kurallarını uygular: Uygun KEDA ölçeklendirme kurallarını oluşturmak için çevrilmiş parametreleri kullanır.
Olayları izler: KEDA, olay kaynaklarınızı bu kurallara göre sürekli izler.
Örnekleri ölçeklendirir: kapsayıcı örneklerinizin ölçeğini iş yüküne göre otomatik olarak büyütür veya küçültür.
Aşağıdaki bölümlerde her tetikleyici türü için belirli parametre eşlemeleri ayrıntılı olarak açıklanmıştır.
Parametreleri ölçeklendirme
Aşağıdaki bölümlerde Azure İşlevleri tetikleyici parametrelerinin desteklenen her tetikleyici türü için ilgili KEDA ölçekleyici yapılandırmalarıyla nasıl eşlendiği açıklanır.
Azure Depolama Kuyruğu
Aşağıdaki tabloda , Azure Depolama Kuyruğu tetikleyici parametrelerininKEDA ölçekleyici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | batchSize |
queueLength |
| Yapılandırma yolu |
extensions.queues.batchSize (host.json) |
metadata.queueLength |
| Varsayılan değer | 16 | 5 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
İşlevler çalışma zamanının paralel olarak alıp işlediği kuyruk iletilerinin sayısı. İşlenen sayı öğesine ulaştığında newBatchThresholdçalışma zamanı başka bir toplu iş getirir. İşlev başına en fazla eşzamanlı ileti sayısı artı'dır batchSizenewBatchThreshold. Uygulama birden çok VM'ye ölçeklendirilmediği sürece eşzamanlılığı ortadan kaldırmak için 1 olarak ayarlayın batchSize .
batchSize Maksimum değer 32'dir. |
Ölçekleyiciye geçirilen kuyruk uzunluğu için hedef değer. Örneğin, bir pod 10 iletiyi işleyebilirse kuyruk uzunluğu hedefini 10 olarak ayarlayın. Kuyruktaki gerçek ileti sayısı 30 ise ölçekleyici üç poda ölçeklendirilir. |
Çeviri mantığı
metadata.queueLength = extensions.queues.batchSize
Azure Service Bus (tek gönderim)
Aşağıdaki tabloda Azure Service Bus tetikleyicisi parametrelerininKEDA ölçekleyici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | maxConcurrentCalls |
messageCount |
| Yapılandırma yolu |
extensions.serviceBus.maxConcurrentCalls (host.json) |
metadata.messageCount |
| Varsayılan değer | 16 | 5 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
Ölçeklendirilmiş örnek başına en fazla eşzamanlı çağrı sayısını sınırlar. Çok çekirdekli örneklerde maksimum değer çekirdek sayısıyla çarpılır. Bu ayarı yalnızca false olduğunda isSessionsEnabled kullanın. |
Azure Service Bus kuyruğunuzdaki veya ölçeklendirilecek konu başlığınızdaki etkin iletilerin sayısı. |
Çeviri mantığı
metadata.messageCount = extensions.serviceBus.maxConcurrentCalls
Azure Service Bus (oturum tabanlı)
Aşağıdaki tabloda , Azure Event Hubs tetikleyici parametrelerininKEDA ölçekleyici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | maxMessageBatchSize |
messageCount |
| Yapılandırma yolu |
extensions.serviceBus.maxMessageBatchSize (host.json) |
metadata.messageCount |
| Varsayılan değer | 1000 | 5 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
| Toplu işleme için her işlev çağrısına geçirilen ileti sayısı üst sınırı. | Azure Service Bus kuyruğunuzdaki veya ölçeklendirilecek konu başlığınızdaki etkin iletilerin sayısı. |
Çeviri mantığı
metadata.messageCount = extensions.serviceBus.maxMessageBatchSize
Azure Event Hubs
Aşağıdaki tabloda , Azure Event Hubs tetikleyici parametrelerininKEDA ölçekleyici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | targetUnprocessedEventThreshold |
unprocessedEventThreshold |
| Yapılandırma yolu |
extensions.eventHubs.targetUnprocessedEventThreshold (host.json) |
metadata.unprocessedEventThreshold |
| Varsayılan değer | sıfır | 64 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
| İşlev örneği başına istenen sayıda işlenmemiş olay. Hedef tabanlı ölçeklendirme için kullanılır. | Ölçeklendirme eylemlerini tetikleyen ortalama hedef değer. |
Çeviri mantığı
metadata.unprocessedEventThreshold = extensions.eventHubs.targetUnprocessedEventThreshold
Apache Kafka
Aşağıdaki tabloda Apache Kafka tetikleyici parametrelerininKEDA ölçekleyici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | LagThreshold |
lagThreshold |
| Yapılandırma yolu | İşlev tetikleyici özniteliği | metadata.lagThreshold |
| Varsayılan değer | 1000 | 10 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
Kafka tetikleyicisi için örnek başına hedef yürütmeler olarak bu değeri kullanın. İstenen örneklerin sayısı, tüketici gecikmesinin LagThresholdtoplamına göre hesaplanır. |
|
| Ölçeklendirme eylemlerini tetiklemek için toplam gecikme (tüm bölüm gecikmelerinin toplamı) için hedef olarak bu değeri kullanın. |
Example
[KafkaTrigger(
"BrokerList",
"topic",
ConsumerGroup = "$Default",
LagThreshold = 100)]
Çeviri mantığı
metadata.lagThreshold = LagThreshold
Azure Cosmos DB veritabanı
Azure Cosmos DB tetikleyicisi bir KEDA ölçeklendiricisine eşlenmez. Bunun yerine özel ölçeklendirme kullanın.
İşlevler tetikleyicisi, işlev çağrısı başına alınan en fazla öğe sayısını ayarlar. İşlem kapsamı saklı yordamlar için korunur.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | MaxItemsPerInvocation |
Mevcut Değil |
| Yapılandırma yolu | İşlev tetikleyici özniteliği | Mevcut Değil |
| Varsayılan değer | 100 | Mevcut Değil |
Example
[CosmosDBTrigger(
databaseName: "ToDoItems",
containerName: "Items",
Connection = "CosmosDBConnection",
MaxItemsPerInvocation = 100)]
HTTP tetikleyicisi
HTTP tetikleyicisi bir KEDA ölçeklendiricisine eşlenmez. Bunun yerine, Container Apps yerleşik HTTP ölçeklendirme özelliklerini veya dış izleme çözümlerini kullanın.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | maxConcurrentRequests |
Mevcut Değil |
| Yapılandırma yolu |
extensions.http.maxConcurrentRequests (host.json) |
Mevcut Değil |
| Varsayılan değer | 100 (Tüketim), -1 (Premium/Ayrılmış) | Mevcut Değil |
Blob depolama tetiklemesi
Aşağıdaki tabloda Azure Blob Depolama tetikleyicisi parametrelerininKEDA ölçekleyici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | maxDegreeOfParallelism |
blobCount |
| Yapılandırma yolu |
extensions.blobs.maxDegreeOfParallelism (host.json) |
metadata.blobCount |
| Varsayılan değer | 8 × kullanılabilir çekirdek sayısı | 5 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
| bir işlev uygulamasındaki tüm blob ile tetiklenen işlevler için izin verilen eşzamanlı çağrı sayısını ayarlar. En düşük değer: 1. | Ölçeklendirme eylemlerini tetikleyen ortalama hedef değer. (Varsayılan: 5, İsteğe Bağlı) |
Çeviri mantığı
metadata.blobCount = extensions.blobs.maxDegreeOfParallelism
Event Grid
Azure Event Grid tetikleyici parametreleri bir KEDA ölçeklendiricisine eşlenmez.
Event Grid tetikleyicisi bir web kancası HTTP isteği kullanır. Bu isteği, HTTP tetikleyicisi ile aynı host.json ayarları kullanarak yapılandırabilirsiniz. Bu ayarlar, kaynak yönetimi için paralel yürütmeyi denetler.
RabbitMQ tetikleyicisi
Aşağıdaki tabloda RabbitMQ tetikleyici parametrelerininKEDA ölçeklendirici yapılandırma değerleriyle nasıl eşlenmiş olduğu gösterilmektedir.
| Parametre | İşlev yapılandırması | KEDA Yapılandırması |
|---|---|---|
| Parametre adı | prefetchCount |
value |
| Yapılandırma yolu |
extensions.rabbitMQ.prefetchCount (host.json) |
metadata.value |
| Varsayılan değer | 30 | 100.50 |
| İşlev tetikleyici açıklaması | KEDA ölçekleyici açıklaması |
|---|---|
| Alıcının aynı anda isteyebileceği ve önbelleğe alabildiği ileti sayısı. | Ölçeklendirmeyi tetikleyen ileti kapsamı veya yayımlama/sn hızı. QueueLength modunda değer, ölçeklendirme için hedef kuyruk uzunluğunu temsil eder. |
Çeviri mantığı
metadata.value = extensions.rabbitMQ.prefetchCount