--- title: "Azkarra Streams" --- {{% blocks/cover title="Azkarra Streams" image_anchor="top" height="full" color="blue" %}}

Create streaming microservices, based on Apache Kafka Streams™, faster than ever before!

Get Started Get the code
{{% blocks/link-down color="light" %}}
{{% /blocks/cover %}} {{< blocks/lead color="white">}}

What is Azkarra Streams ?

The Azkarra Streams project is dedicated to making development of streaming microservices based on Apache Kafka Streams simple and fast. Our goal is not to recreate yet another full-stack framework (e.g : Quarkus or Micronaut), but to provide a straightforward way to build and deploy Kafka Streams applications by leveraging the best-of-breed ideas and proven practices from the open-source community (Azkarra is Basque word for "Fast").

{{< /blocks/lead >}}

Streaming 'Word Count'

{{< highlight java >}} @AzkarraStreamsApplication public class StreamsApplication { public static void main(final String[] args) { AzkarraApplication.run(StreamsApplication.class, args); } @Component @TopologyInfo( description = "A basic WordCount topology example", aliases = {"Word"} ) public class BasicWordCountTopology implements TopologyProvider { @Override public String version() { return Version.getVersion(); } @Override public Topology get() { final StreamsBuilder builder = new StreamsBuilder(); final KStream words = builder.stream("streams-plaintext-input"); words.flatMapValues(value -> Arrays.asList(value.toLowerCase().split("\\s"))) .groupBy((key, value) -> value) .count(Materialized.as("count")) .toStream().to( "streams-word-count-output", Produced.with(Serdes.String(), Serdes.Long()) ); return builder.build(); } } } {{< / highlight >}}

With Azkarra Streams!

Features

Easy to use
Anyone with Java knowledge can easily build a streaming microservice based on Apache Kafka Streams. The Azkarra API offers advanced features on top of Kafka Streams to make you app production-ready in a just few lines of code.
Useful UI
Monitor, deploy and manage lifecycle of your KafkaStreams instances using web application. Get quick insights from the exposed metrics and visualize topology DAGs to find optimization paths.
Designed for producton
Azkarra offers many features to make your Kafka Streams topologies run smoothly in production (e.g : Healthcheck, Metrics, Dead Letter Topic). Monitor your application via REST endpoints giving you access to tandard metrics exposed either in JSON or Prometheus format.
Secured
Azkarra supports different security mechanisms (SSL/TLL, Basic Authentication) to secure access to your data and to REST endpoints.
Open source
The Azkarra Streams project is an open initiative to enrich the Apache Kafka Streams open-source ecosystem. The project is released under the Apache License 2.0. Anyone can contribute to the Azkarra project by opening an issue, a pull request or just by discussing with other users on the Slack Channel.

Integrations

micrometer_software prometheus_software
{{< blocks/section color="dark" >}} {{% blocks/feature icon="fab fa-slack" title="Join us on Slack" %}} Join the Azkarra Streams community on Slack {{% /blocks/feature %}} {{% blocks/feature icon="fab fa-github" title="Contributions welcome" %}} Want to join the fun on Github? New users are always welcome! {{% /blocks/feature %}} {{% blocks/feature icon="fas fa-star" title="Support Azkarra Team" %}} Add a star to the GitHub project, it only takes 5 seconds! {{% /blocks/feature %}} {{< /blocks/section >}}