Spring Cloud Stream App Starters

Spring Cloud Stream Application Starters are Spring Boot based Spring Integration applications that provide integration with external systems. Spring Cloud Stream Applications can be used with Spring Cloud Data Flow to create, deploy, and orchestrate message-driven microservice applications.

Quick Start
Fork me on GitHub

Spring Cloud Stream Application Starters are standalone executable applications that communicate over messaging middleware such as Apache Kafka and RabbitMQ. These applications can run independently on variety of runtime platforms including: Cloud Foundry, Apache Yarn, Apache Mesos, Kubernetes, Docker, or even on your laptop.


  • Run standalone as Spring Boot applications
  • Compose microservice as streaming pipelines in Spring Cloud Data Flow
  • Consume microservice applications as maven or docker artifacts
  • Override configuration parameters via command-line, environment variables, or YAML file
  • Provide infrastructure to test the applications in isolation
  • Download as starters from this version of Spring Initializr

Available Applications

Source Processor Sink
file aggregator aggregate-counter
ftp bridge cassandra
gemfire filter counter
gemfire-cq groovy-filter field-value-counter
http groovy-transform file
jdbc httpclient ftp
jms pmml gemfire
load-generator scriptable-transform gpfdist
loggregator splitter hdfs
mail tasklaunchrequest-transform hdfs-dataset
mongodb tcp-client jdbc
rabbit transform log
s3   mongodb
sftp   pgcopy
syslog   rabbit
tcp   redis-pubsub
tcp-client   router
time   s3
trigger   sftp
triggertask   task-launcher-cloudfoundry
twitterstream   task-launcher-local

Quick Start

Step 1 - Download the latest Kafka 10 based time-source application from here [eg: /1.1.1.RELEASE/time-source-kafka-10-1.1.1.RELEASE.jar]

Step 2 - Download the latest Kafka 10 based log-sink application from here [eg: /1.1.1.RELEASE/log-sink-kafka-10-1.1.1.RELEASE.jar]

Step 3 - Start Kafka

Step 4 - Run Time Source and Bind to ticktock Topic

java -jar time-source-kafka-***.jar --spring.cloud.stream.bindings.output.destination=ticktock

Step 5 - Run Log Sink and Bind to ticktock Topic

java -jar log-sink-kafka-***.jar --spring.cloud.stream.bindings.input.destination=ticktock

Step 6 - Verify ticktock Logs in Console

Stream App Starters and Spring Cloud Data Flow (**)

Artifact Type Stable Release Snapshot/Milestone Release
RabbitMQ + Maven http://bit.ly/Bacon-RELEASE-stream-applications-rabbit-maven http://bit.ly/Bacon-BUILD-SNAPSHOT-stream-applications-rabbit-maven
RabbitMQ + Docker http://bit.ly/Bacon-RELEASE-stream-applications-rabbit-docker http://bit.ly/Bacon-BUILD-SNAPSHOT-stream-applications-rabbit-docker
Apache Kafka 0.9 + Maven http://bit.ly/Bacon-RELEASE-stream-applications-kafka-09-maven http://bit.ly/Bacon-BUILD-SNAPSHOT-stream-applications-kafka-09-maven
Apache Kafka 0.10 + Maven http://bit.ly/Bacon-RELEASE-stream-applications-kafka-10-maven http://bit.ly/Bacon-BUILD-SNAPSHOT-stream-applications-kafka-10-maven
Apache Kafka 0.9 + Docker http://bit.ly/Bacon-RELEASE-stream-applications-kafka-09-docker http://bit.ly/Bacon-BUILD-SNAPSHOT-stream-applications-kafka-09-docker
Apache Kafka 0.10 + Docker http://bit.ly/Bacon-RELEASE-stream-applications-kafka-10-docker http://bit.ly/Bacon-BUILD-SNAPSHOT-stream-applications-kafka-10-docker

(**) find out how to use the app-starters in Spring Cloud Data Flow by reviewing the app-registration section in the reference guide