Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med Kafka-tillägget för Azure Functions kan du skriva ut värden till Apache Kafka-ämnen med hjälp av en utdatabindning. Du kan också använda en utlösare för att anropa dina funktioner som svar på meddelanden i Kafka-ämnen.
Viktigt!
Kafka-bindningar är endast tillgängliga för Functions i planen Elastic Premium Plan and Dedicated (App Service). De stöds endast på version 3.x och senare version av Functions-körningen.
Åtgärd | Typ |
---|---|
Kör en funktion baserat på en ny Kafka-händelse. | Utlösare |
Skriv till Kafka-händelseströmmen. | Utdatabindning |
Installera tillägget
Vilket NuGet-tilläggspaket du installerar beror på vilket C#-läge du använder i funktionsappen:
Funktioner körs i en isolerad C#-arbetsprocess. Mer information finns i Guide för att köra C# Azure Functions i en isolerad arbetsprocess.
Lägg till tillägget i projektet genom att installera det här NuGet-paketet.
Installera paket
Kafka-tillägget är en del av ett tilläggspaket som anges i din host.json-projektfil. När du skapar ett projekt som riktar sig till Functions version 3.x eller senare bör du redan ha det här paketet installerat. Mer information finns i tilläggspaketet.
Aktivera körningsskalning
För att dina funktioner ska kunna skalas korrekt på Premium-planen när du använder Kafka-utlösare och bindningar måste du aktivera övervakning av körningsskala.
I Azure-portalen går du till funktionsappen och väljer Konfiguration.
På fliken Inställningar för funktionskörning väljer du På för Körningsskalningsövervakning.
host.json inställningar
I det här avsnittet beskrivs de konfigurationsinställningar som är tillgängliga för den här bindningen i version 3.x och senare. Inställningar i host.json-filen gäller för alla funktioner i en funktionsappinstans. Mer information om konfigurationsinställningar för funktionsappar i version 3.x och senare versioner finns i host.json referens för Azure Functions.
{
"version": "2.0",
"extensions": {
"kafka": {
"maxBatchSize": 64,
"SubscriberIntervalInSeconds": 1,
"ExecutorChannelCapacity": 1,
"ChannelFullRetryIntervalInMs": 50
}
}
}
Fastighet | Standardvärde | Typ | Beskrivning |
---|---|---|---|
ChannelFullRetryIntervalInMs | 50 | Utlösare | Definierar omförsöksintervallet för prenumeranter, i millisekunder, som används vid försök att lägga till objekt i en kanal med kapacitet. |
ExecutorChannelCapacity | 1 | Båda | Definierar kanalmeddelandekapaciteten. När kapaciteten har nåtts pausar Kafka-prenumeranten tills funktionen kommer ikapp. |
MaxBatchSize (på engelska) | 64 | Utlösare | Maximal batchstorlek när du anropar en Kafka-utlöst funktion. |
SubscriberIntervalInSeconds | 1 | Utlösare | Definierar den minsta frekvens som inkommande meddelanden körs per funktion i sekunder. Endast när meddelandevolymen är mindre än MaxBatchSize / SubscriberIntervalInSeconds |
Följande egenskaper, som ärvs från Apache Kafka C/C++-klientbiblioteket, stöds också i avsnittet i kafka
host.json för antingen utlösare eller både utdatabindningar och utlösare:
Fastighet | Gäller för | librdkafka motsvarande |
---|---|---|
AutoCommitIntervalMs | Utlösare | auto.commit.interval.ms |
AutoOffsetReset | Utlösare | auto.offset.reset |
FetchMaxBytes | Utlösare | fetch.max.bytes |
LibkafkaDebug | Båda | debug |
MaxPartitionFetchBytes | Utlösare | max.partition.fetch.bytes |
MaxPollIntervalMs | Utlösare | max.poll.interval.ms |
MetadataMaxAgeMs | Båda | metadata.max.age.ms |
QueuedMinMessages | Utlösare | queued.min.messages |
QueuedMaxMessagesKbytes | Utlösare | queued.max.messages.kbytes |
ÅteranslutBackoffMs | Utlösare | reconnect.backoff.max.ms |
ÅteranslutBackoffMaxMs | Utlösare | reconnect.backoff.max.ms |
SessionTimeoutMs | Utlösare | session.timeout.ms |
SocketKeepaliveEnable | Båda | socket.keepalive.enable |
StatisticsIntervalMs | Utlösare | statistics.interval.ms |