Microsoft has slung a Kafka Extension for Azure Functions out to preview as well as sneaking in Java 8 support for Linux hosting.
The public preview of the Kafka extension, currently only available on the Premium Plan for Azure Functions, adds the ability to have functions trigger in response to messages in Kafka Topics, or write to Kafka Topics. Both are handy for dealing with the stream processing platform.
The Kafka communication is based on the Confluent.Kafka library. It is also possible to use Kafka with Azure Functions containers in Kubernetes alongside KEDA.
Azure Functions might be a little late to the game on the Kafka front. While Microsoft's extension is in public preview, the Kafka Connect AWS Lambda sink connector is already available on the Confluent platform and will cheerfully pull records from Apache Kafka topics, convert them to JSON and run an AWS Lambda function. The output can then be spat back at another Kafka topic.
Apache Kafka itself is an open-source project aimed at handling real-time data feeds, and hooks up to external systems via Kafka Connect. While pushers of the tech, such as Confluent, have attempted to persuade those more familiar with traditional RDBMS systems that stream processing isn't that scary with the likes of ksqlDB, it does remain best suited for tasks such as monitoring, messaging and activity tracking as well as stream processing.
The Kafka extension came as Linux hosting for Azure Functions applications built with Java 8 also entered preview. The preview means that Java container workloads can be slung at Azure Functions and Kubernetes with KEDA, if that's your thing.
The Kafka extension is being developed in the open, and Microsoft added that it would "continue to innovate to bring in more Cloud Native and Open Source event sources."
You lucky, lucky people. ®