JHipster 3.0 Released with Microservices Support
The JHipster team has released JHipster 3.0 with new support for microservices. JHipster is a Yeoman generator that creates applications with an AngularJS UI and a Spring Boot API. With this release, users now have the option to generate more than just a traditional monolithic application; now they can generate a complete microservices architecture - with separate applications for routing, registering services, monitoring and microservices. It also adds the ability to generate Docker and Docker Compose configurations so you can start all of these applications with a single command. You can also scale up services with a single command.
The project’s microservices architecture documentation explains how the new microservices support works.
You first generate a gateway that handles web traffic and serves up an Angular UI.
The JHipster Registry is a standalone application that you install, rather than generate. All microservices register with this application and get their configuration from it. This application is based on Spring Cloud Eureka and Spring Cloud Config Server.
Microservices are JHipster-generated stateless applications that handle REST requests.
In the diagram below, green represents JHipster-generated components while blue are the registry and console applications.
Kenneth Hegeland of IpponUSA wrote a blog post explaining this architecture in more detail.
In addition to its microservices feature, JHipster 3.0 adds some notable enhancements:
JSON Web Tokens are now supported for security.
AngularJS code has been refactored to follow John Papa’s Style Guide.
JDL is now a natively supported with the import-jdl sub-generator. You can use JDL Studio to visually create your domain model and export it to JDL.
Microservices support is really great!