Event Grid olayları için olay işleyicisi olarak işlev kullanma

Olay işleyicisi, olayın gönderildiği yerdir. İşleyici olayı işlemek için bir eylemde bulunur. Bazı Azure hizmetleri olayları işlemek için otomatik olarak yapılandırılır ve Azure İşlevleri bunlardan biridir.

Azure'da bir işlevi olaylar için işleyici olarak kullanmak için şu yaklaşımlardan birini izleyin:

  • Event Grid tetikleyicisi kullanın. Uç nokta türü olarak Azure İşlevi'ni belirtin. Ardından işlev uygulamasını ve olayları işleyecek işlevi belirtin.
  • HTTP tetikleyicisi kullanın. Uç nokta türü olarak Web Kancası'nı belirtin. Ardından, olayları işleyecek işlevin URL'sini belirtin.

İkinci yaklaşıma göre aşağıdaki avantajlara sahip olduğundan ilk yaklaşımı (Event Grid tetikleyicisi) kullanmanızı öneririz:

  • Event Grid, Event Grid tetikleyicilerini otomatik olarak doğrular. Genel HTTP tetikleyicileri ile doğrulama yanıtını kendiniz uygulamanız gerekir.
  • Event Grid, olayların Event Grid olayı tarafından tetiklenen bir işleve teslim etme hızını, işlevin olayları işleyebildiği algılanan hıza göre otomatik olarak ayarlar. Bu hız eşleştirme özelliği, işlevin olay işleme oranı zaman içinde farklılık göstere kadar bir işlevin olayları işleyememesinden kaynaklanan teslim hatalarını engeller. Yüksek aktarım hızındaki verimliliği artırmak için olay aboneliğinde toplu işlemeyi etkinleştirin. Daha fazla bilgi için bkz . Toplu işlemi etkinleştirme.

Dekont

  • Azure işlevini kullanarak olay aboneliği eklemek için bir Event Grid tetikleyicisi oluşturduğunuzda Event Grid, Event Grid hizmet sorumlusunun kimlik bilgilerini kullanarak hedef işlev için erişim anahtarını getirir. Event Grid kaynak sağlayıcısını Azure aboneliğine kaydettiğinizde Event Grid'e izinler verilir.
  • Azure işlevinizi bir Microsoft Entra ID uygulamasıyla korursanız HTTP tetikleyicisini kullanarak genel web kancası yaklaşımını benimsemeniz gerekir. Aboneliği eklerken Web kancası URL'si olarak Azure işlev uç noktasını kullanın.

Öğreticiler

Title Tanım
Hızlı Başlangıç: İşlevle olayları işleme İşlenmek üzere bir işleve özel bir olay gönderir.
Öğretici: Event Grid kullanarak karşıya yüklenen görüntüleri yeniden boyutlandırmayı otomatikleştirme Kullanıcılar, web uygulaması aracılığıyla görüntüleri depolama hesabına yükler. Depolama blobu oluşturulduğunda Event Grid, işlev uygulamasına karşıya yüklenen görüntüyü yeniden boyutlandıran bir olay gönderir.
Öğretici: Büyük verileri veri ambarı içine akışla aktarma Event Hubs bir Yakalama dosyası oluşturduğunda, Event Grid bir işlev uygulamasına bir olay gönderir. Uygulama Capture dosyasını alır ve verileri bir veri ambarı'na geçirir.
Öğretici: Azure Service Bus - Azure Event Grid tümleştirme örnekleri Event Grid, Service Bus konusundan bir işlev uygulamasına ve mantıksal uygulamaya ileti gönderir.

REST örneği (PUT için)

{
	"properties": 
	{
		"destination": 
		{
			"endpointType": "AzureFunction",
			"properties": 
			{
				"resourceId": "/subscriptions/<AZURE SUBSCRIPTION ID>/resourceGroups/<RESOURCE GROUP NAME>/providers/Microsoft.Web/sites/<FUNCTION APP NAME>/functions/<FUNCTION NAME>",
				"maxEventsPerBatch": 10,
				"preferredBatchSizeInKilobytes": 64
			}
		},
		"eventDeliverySchema": "EventGridSchema"
	}
}

Toplu işlemi etkinleştirme

Daha yüksek aktarım hızı için abonelikte toplu işlemeyi etkinleştirin. Azure portalını kullanıyorsanız, abonelik oluşturulurken veya oluşturulduktan sonra toplu iş başına en fazla olay ve tercih edilen toplu iş boyutunu kilo bayt cinsinden ayarlayabilirsiniz.

Toplu iş ayarlarını Azure portalı, PowerShell, CLI veya Resource Manager şablonunu kullanarak yapılandırabilirsiniz.

Azure portalı

Kullanıcı arabiriminde abonelik oluştururken Olay Aboneliği Oluştur sayfasında Gelişmiş Özellikler sekmesine geçin ve toplu iş başına en fazla olay ve kilobayt cinsinden Tercih edilen toplu iş boyutu değerlerini ayarlayın.

Enable batching at the time of creating a subscription

Mevcut bir abonelik için bu değerleri Event Grid Konu Sayfasının Özellikler sekmesinde güncelleştirebilirsiniz.

Enable batching after creation

Azure Resource Manager şablonu

Azure Resource Manager şablonunda maxEventsPerBatch ve preferredBatchSizeInKilobytes ayarlayabilirsiniz. Daha fazla bilgi için bkz . Microsoft.EventGrid eventSubscriptions şablon başvurusu.

Azure CLI

Komutunu kullanarak az eventgrid event-subscription create aşağıdaki parametreleri kullanarak toplu işlemle ilgili ayarları yapılandırabilirsiniz: --max-events-per-batch veya --preferred-batch-size-in-kilobytes.

Azure PowerShell

Aşağıdaki parametreleri kullanarak toplu işlemle ilgili ayarları yapılandırmak için New-AzEventGridSubscription veya Update-AzEventGridSubscription cmdlet'ini kullanabilirsiniz: -MaxEventsPerBatch veya -PreferredBatchSizeInKiloBytes.

Dekont

Event Grid Tetikleyicisi'ni kullandığınızda, Event Grid hizmeti hedef Azure işlevi için istemci gizli dizisini getirir ve olayları Azure işlevine teslim etmek için bunu kullanır. Azure işlevinizi bir Microsoft Entra uygulamasıyla korursanız, genel web kancası yaklaşımını benimsemeli ve HTTP Tetikleyicisi'ni kullanmalısınız.

Sonraki adımlar

Desteklenen olay işleyicilerinin listesi için Olay işleyicileri makalesine bakın.