本系列文章演示如何用JHipster生成一个微服务架构风格的应用栈。
环境需求:安装好JHipster开发环境的CentOS 7.4(参考这里)
应用栈名称:appstack
认证微服务: uaa
业务微服务:microservice1
网关微服务:gateway
实体名:role
主机IP:192.168.220.120
因为业务微服务和网关微服务都会依赖uaa,所以首先生成uaa的工程代码。
进入appstack/uaa目录,输入命令后回车:
选择生成的微服务类型
这是一个单选题,有4个选项,使用上下键切换选项。
这里选择JHipster UAA server,这是一种基于OAuth认证机制的微服务。
单击回车继续。
1.2 What is the base name of your application?输入微服务的名称
默认名称是当前目录名uaa,也可以自己输入名称。
注意:名称只能是大小写字母,数字和下划线的任意组合,不允许任何其它字符。
单击回车继续。
1.3 As you are running in a microservice architecture, on which port would like your server to run? It should be unique to avoid port conflicts.输入微服务的端口号
默认端口号是9999,也可以自己输入端口号,注意不要和别的微服务和进程的端口号冲突。
单击回车继续。
1.4 What is your default Java package name?输入微服务的java包名
根据整个应用栈的目录层级,这里输入包名com.mycompany.appstack。
注意:包名要符合Java标准规范的要求。
单击回车继续。
1.5 Which service discovery server do you want to use?选择一个服务发现组件
这是一个单选题,有3个选项,使用上下键切换选项。
根据微服务体系规划,这里选择JHipster Registry。
单击回车继续。
1.6 Which type of database would you like to use?选择使用的数据库类型
这是一个单选题,有4个选项,使用上下键切换选项。
可以看到支持的数据库类型很多,这里选择默认选项SQL。
单击回车继续。
1.7 Which production database would you like to use?选择生产环境中使用的数据库
这是一个单选题,有5个选项,使用上下键切换选项。
可以看到目前支持5种SQL数据库,这里选择默认选项MySQL。
单击回车继续。
1.8 Which development database would you like to use?选择开发环境中使用的数据库
这是一个单选题,有3个选项,使用上下键切换选项。
H2调试起来简单,但为了和生产环境保持一致性,这里选择MySQL。
单击回车继续。
1.9 Do you want to use the Spring cache abstraction?是否需要使用Spring Cache?
这是一个单选题,有5个选项,使用上下键切换选项。
根据实际场景需要,可以选择不同缓存组件;这里简单起见,选择No - Warning, when using an SQL database, this will disable the Hibernate 2nd level cache!。