Important

You are viewing documentation for an older version of Confluent Platform. For the latest, click here.

Streams Code Examples

If you’re new to Kafka Streams, here is a curated list of resources to get you started.

Getting started examples

Collections

The kafka-streams-examples GitHub repo is a curated repo with examples that demonstrate the use of Kafka Streams DSL, the low-level Processor API, Java 8 lambda expressions, reading and writing Avro data, and implementing unit tests with TopologyTestDriver and end-to-end integration tests using embedded Kafka clusters.

There are also numerous Kafka Streams examples in Kafka Tutorials that provide full code examples with step–by-step instructions.

Security examples

Java programming language

Without lambda expressions for Java 7:

Interactive Queries examples

Since Confluent Platform 3.1+ and Kafka 0.10.1+, it is possible to query state stores created via the Kafka Streams DSL and the Processor API. Please refer to Kafka Streams Interactive Queries for further information.

Java

With lambda expressions for Java 8+:

End-to-end application examples

These demo applications use embedded instances of Kafka, ZooKeeper, and Confluent Schema Registry. They are implemented as integration tests.

See also

To see end-to-end examples of Kafka Streams applications deployed in an event streaming platform with all the services in Confluent Platform and interconnecting other end systems, refer to confluentinc/examples.

Scala

Event-Driven Microservice example

Java

The Event-Driven Microservice example implements an Orders Service that provides a REST interface to POST and GET orders. Posting an order creates an event in Kafka, which is picked up by three different validation engines: a Fraud Service, an Inventory Service, and an Order Details Service. These services validate the order in parallel, emitting a PASS or FAIL based on whether each validation succeeds.

../_images/microservices-demo.png