JHipster团队发布了JHipster 3.0,新增了微服务支持。JHipster是一个Yeoman生成器,使用AngularJS UI和Spring Boot API创建应用程序。借助这个版本,用户现在有了更多的选择,而不只是生成一个传统的单体应用;现在,他们可以生成一个完整的微服务架构——路由、服务注册、监控和微服务都是单独的应用程序。它还增加了生成Docker和Docker Compose配置的能力,因此,用户可以使用一个命令启动所有这些应用程序。此外,用户还可以使用一个命令扩展服务。
\\该项目的微服务架构文档说明了新增的微服务支持是如何工作的:
\\- 首先生成一个网关,处理Web流量并为Angular UI服务。 \\
- JHipster Registry是一个独立安装的应用程序,而不是生成的。所有微服务都使用这个应用程序注册及获取配置信息。这个应用程序以Netflix的Eureka和Spring Cloud Config为基础。 \\
- 微服务是由JHipster生成的、处理REST请求的无状态应用程序。 \\
- 为了监控这个架构,用户可以使用JHipster控制台,该控制台以ELK Stack(Elasticsearch、Logstash、Kibana)为基础。\
如下图所示,绿色代表JHipster生成的组件,而蓝色是注册和控制应用程序。
\\来自IpponUSA的Kenneth Hegeland写了一篇博文,更详细地介绍了这个架构。除了微服务特性外,JHipster 3.0还有一些值得注意的增强:
\\- 出于安全考虑,现在支持JSON Web Tokens了。 \\
- Gulp.js是唯一支持的JavaScript构建工具;Grunt已被移除。 \\
- AngularJS代码已经按照John Papa的风格指南重构。 \\
- 现在已经使用import-jdl辅助生成器实现了JDL本地支持。用户可以使用JDL Studio可视化地创建域模型,并导出到JDL。\
InfoQ曾报道过,JHipster上一个主版本2.0在2015年1月发布。InfoQ还提供了JHipster迷你书,供读者免费下载。
\\