微服务架构说明
概述
天翎MyApps平台采用微服务架构。基于Spring boot2.x,也可以部署到Tomcat、Jetty、金蝶Apusic等应用服务器。
部署图
详细描述
服务注册/发现
作用说明
服务注册,就是将提供某个服务的模块信息(通常是这个服务的ip和端口)注册到1个公共的组件上去(比如: consul、Nacos)。
服务发现,就是新注册的这个服务模块能够及时的被其他调用者发现。不管是服务新增和服务删减都能实现自动发现。
MyApps平台支持的服务注册/发现组件包括:Consul、Eureka、Nacos
发布
无
依赖
无
网关服务
作用说明
提供API转发能力的组件,通过与服务注册/发现配合,可以实现负载均衡、限流、失效转移、熔断等。
网关服务会对API请求做基本的权鉴,HTTP请求头或Cookie中的“accessToken”、“adminToken” 作合法性校验。
发布
适应不同的注册服务器和发布方式,网关服务被打包成:
obpm-gateway-consul-xx.jar:适配Consul
obpm-gateway-eureka-xx.jar:适配Eureka
obpm-gateway-nacos-xx.jar:适配Nacos
注:通过tomcat或金蝶Apusic等应用服务器发布,不会用到网关,所以不会打包。
依赖
服务注册/发现(Consul、Eureka等)
登录服务
作用说明
完成用户登录权鉴动作,并在权鉴成功后,发放“accessToke”,其中,“accessToken”为JWT算法加密的文本,playload为userid。
发布
适应不同的注册服务器和发布方式,服务被打包成:
obpm-signon-consul-xx.jar:适配Consul
obpm-signon-eureka-xx.jar:适配Eureka
obpm-signon-nacos-xx.jar:适配Nacos
signon.war:适配tomcat、jetty、Apusic
依赖
服务注册/发现:Consul、Eureka等
系统库:存储用户、部门、权限设置等信息的关系型数据库,支持MySQL、ORACLE、DB2、SQLSERVER 、达梦、人大金昌、瀚高、高斯等主流数据库。
运行时服务
作用说明
MyApps运行能力的主要实现服务。从存储中读取配置好的软件(应用),并运行软件(应用)中的业务逻辑,如:表单、视图、报表、流程等。是业务逻辑的运行器。
发布
适应不同的注册服务器和发布方式,服务被打包成:
obpm-runtime-consul-xx.jar:适配Consul
obpm-runtime-eureka-xx.jar:适配Eureka
obpm-runtime-nacos-xx.jar:适配Nacos
obpm.war:适配tomcat、jetty、Apusic
依赖
服务注册/发现:Consul、Eureka等
REDIS:缓存服务并保证在多实例时关键状态一致性
系统库:存储用户、部门、权限设置等信息的关系型数据库,支持MySQL、ORACLE、DB2、SQLSERVER 、达梦、人大金昌、瀚高、高斯等主流数据库。
业务库:存储软件(应用)业务信息的关系型数据库,支持MySQL、ORACLE、DB2、SQLSERVER 、达梦、人大金昌、瀚高、高斯等主流数据库。
MQ:消息队列,采用ApacheMQ,完成异步动作解耦。
消息服务
作用说明
实现消息类功能的服务,如站内消息、社区评论等
发布
适应不同的注册服务器和发布方式,服务被打包成:
obpm-message-consul-xx.jar:适配Consul
obpm-message-eureka-xx.jar:适配Eureka
obpm-message-nacos-xx.jar:适配Nacos
message.war:适配tomcat、jetty、Apusic
依赖
服务注册/发现:Consul、Eureka等
消息库:存储消息信息的关系型数据库,支持MySQL、ORACLE、DB2、SQLSERVER 、达梦、人大金昌、瀚高、高斯等主流数据库。
MQ:消息队列,采用ApacheMQ,完成异步动作解耦。
知识文档服务
作用说明
发布
适应不同的注册服务器和发布方式,服务被打包成:
obpm-kms-consul-xx.jar:适配Consul
obpm-kms-eureka-xx.jar:适配Eureka
obpm-kms-nacos-xx.jar:适配Nacos
kms.war:适配tomcat、jetty、Apusic
依赖
服务注册/发现:Consul、Eureka等
运行时服务:runtime,获取用户等信息
知识库:存储知识文档管理信息的关系型数据库,支持MySQL、ORACLE、DB2、SQLSERVER 、达梦、人大金昌、瀚高、高斯等主流数据库。
问卷服务
作用说明
定义问卷、填写答卷功能。
发布
适应不同的注册服务器和发布方式,服务被打包成:
obpm-qms-consul-xx.jar:适配Consul
obpm-qms-eureka-xx.jar:适配Eureka
obpm-qms-nacos-xx.jar:适配Nacos
qms.war:适配tomcat、jetty、Apusic
依赖
服务注册/发现:Consul、Eureka等
运行时服务:runtime,获取用户等信息
问卷库:存储问卷业务信息的关系型数据库,支持MySQL、ORACLE、DB2、SQLSERVER 、达梦、人大金昌、瀚高、高斯等主流数据库。