Using Kafka
WARNING! This is a new feature, of BETA quality. Use it at your own risk! Feedback is highly welcome!
Features
Kafka is a popular publish-subscribe messaging system. JHipster has an optional support for Kafka, that will:
- Configure Spring Cloud Stream with JHipster.
- Add the necessary configuration in the
application-*.yml
files to have a sampletopic-jhipster
topic, and to have an healthcheck monitor for Kafka (which will be available in thehealth
administration screen). - Generate a Docker Compose configuration file, with the sample
topic-jhipster
topic, so Kafka is usable by simply typingdocker-compose -f src/main/docker/kafka.yml up -d
. - Provide support for Kafka in a microservice environment, when using Docker. The Docker Compose sub-generator will generate a specific Kafka configuration, if one microservice or one gateway uses Kafka. All microservices and gateways will then use that Kafka broker for all their messages. The broker is common for all applications, as it is typically used as a message broker between applications.
Limitations
- The Kafka option is currently incompatible with the Gatling option (for performance testing). It is because they require different versions of Scala. This will be solved in the next Spring Cloud Stream release.
- We currently do not provide a complete example on working with Kafka, and we have no client-side code using Kafka.