构建统一技术体系
构建一体化支撑能力
构建统一门户
微服务体系 融合多语言混合模式微服务框架,打造自主可控、高性能、安全可靠、可多环境运行(操作系统、k8s/Docker等)的微服务架构。 01
服务治理体系 建设一套独立完整的服务治理体系,为基础技术平台安全、稳定、可靠运行提供治理能力,主要功能包括服务熔断、服务超时处理、服务降级、服务限流、权限验证、黑白名单等。 02
开发运维协同体系 包括开发管理项目管理、测试管理、持续集成、应用成果库(制品库)、持续部署、文档管理。 03
03
技术标准规范 建设《微服务开发规范》、《微服务设计规范》等14份标准规范。 04
构建业务支撑 建设用户、任务、流程、消息、日志、报表管理系统,提供通用服务,为各专业平台的建设提供业务支撑。 01
构建技术支撑 建设服务管理系统、开发运维协同系统、数据管理系统,作为基础技术平台的底层技术支撑,同时为各独立系统提供技术手段。 02
统一入口 建设统一专业入口,并通过单点登录,基础技术平台与各专业平台实现免登陆访问。 01
统一任务 建设任务中心,各平台的任务可统一进入基础技术平台内统一处理。 02
统一消息 建设消息中心,各平台的消息可统一进入基础技术平台内统一查看。 03
统一风格 指定标准风格规范,各平台门户的建设均遵循此规范。 04
功能架构
技术架构
部署架构
系统间交互机制
统一认证
统一部署
统一日志
通用接口调用
公共微服务
通用页面组件
技术中台作为数字化系统的枢纽,利用消息、服务系统驱动数据交互。其主要功能包括以下内容:
业务支撑
支撑具体业务的运行,并为各个专业平台提供通用功能。
技术支撑
为当前平台建设、功能扩展、稳定运行提供技术保障,主要包括:服务管理系统、开发运维协同管理系统。
服务层
包括技术中台业务支撑、基础支撑模块建设的微服务程序,如任务服务、组织用户数据服务、消息服务、日志服务等。
技术中台技术架构以微服务为核心,共分为基础支撑层、服务支撑层、服务层、网关层、应用层,下面将分别进行说明。
业务支撑层
使用容器化云服务器和物理服务器两种方式,最终采用Docker容器化方式部署在K8s环境中;存储层支持结构化数据、非结构化数据。
服务支撑层
采用.Net Core(C#)、Java语言开发多语言微服务架构,将核心组件由单语言微服务架构深化为多语言微服务架构
服务层
包括技术中台业务支撑、基础支撑模块建设的微服务程序,如任务服务、组织用户数据服务、消息服务、日志服务等。
网关层
实现安全服务网关,通过服务网关对外提供统一的请求入口,对内进行分流、限流、认证鉴权管理。
应用层
为技术中台或独立系统开发的服务程序或系统,各独立系统通过集成SDK开发包实现与基础技术微服务核心组件、注册中心、治理中心、监控中心。
开发运维一体化
1. 同时提供开发运维一体化系统(DevOps),为独立系统建设提供支撑,通过使用Git存储服务、流水线引擎、Kubernetes集群部署。
技术中台部署方案是将微服务程序docker容器化,docker容器镜像仓库化,再用Kubernetes(简称k8s)作为docker管理工具,通过管理控制台管理和监控众多微服务程序。
WAF 防火墙
使用容器化云服务器和物理服务器两种方式,最终采用Docker容器化方式部署在K8s环境中;存储层支持结构化数据、非结构化数据
网络网关层(Nginx)
多节点集群部署Nginx服务器,保障对外接口的稳定、可靠、高效。
服务运行环境集群
为微服务程序部署环境,包括物理服务器集群、K8s服务部署集群和独立系统微服务部署集群
服务管理环境集群
为微服务程序支撑服务组件的部署服务器集群,包括注册中心、治理中心、监控中心、配置中心、分布式事务服务器等。
开发运维部署集群
为部署开发运维系统(DevOps),包括源码服务器、生产线服务器、镜像服务器、测试服务器。
基础支撑集群部署
技术中台基础支撑模块,包括数据库服务集群、Elasticsearch服务器、缓存服务器集群、文件服务器集群、及时消息集群、消息总线集群。
数据交互通过推式和拉式两种方式实现数据交互通过推式和拉式两种方式实现 技术中台基于消息管理系统-业务领域消息事件及服务管理系统-服务注册中心等技术手段,调度独立系统间数据交互,对交互过程中产生的过程数据由数据管理系统统一存储,独立系统收发数据等时刻产生的日志信息由日志管理系统统一记录,技术中台保障数据传输过程中的安全性、完整性。 过程:
独立系统A将需对外提供的数据发布为业务领域;独立系统B根据业务需要查询业务领域消息事件并进行订阅。
独立系统A需要对外发布数据时 ,按照发布的消息事件信息,调用统一推送数据接口将数据传入。
由消息服务引擎对数据进行处理,处理后根据独立系统订阅关系推送数据给消息接收服务端。
安装在各独立系统B服务器端的工具接收到数据,对数据进行处理。
平台注册是各独立系统应用系统获取身份凭证唯一的功能入口 独立系统应用系统凡是需要与技术中台进行通讯,都需要进行平台注册,来保证独立系统应用系统身份的合法性,通讯信息安全性,申请通过审批后会产生独立系统应用系统唯一令牌AppKey和RAS密钥对并分配消息服务引擎。 使用场景:
独立系统任何调用技术中台服务行为都需要携带AppKay,用AppKey和私钥申请合法令牌token(单点登录服务);
通讯的信息数据都需要进行安全加密策略,通过密钥信息进行解密,使用分配的消息服务引擎处理;
项目、专业/子专业基本信息用于业务领域消息事件发布订阅、日志模块、微服务接口注册、微服务接口应用等
技术平台统一部署中心是为基于技术中台开发的微服务程序提供的打包、发布、部署等。
将微服务程序、监听消息服务端部署在独立系统服务器上,支持的系统类型如下:
  • Windows Server 2012及以上。
  • CentOS 7及以上、Ubuntu、麒麟等基于Linux内核 的服务器。
独立系统在使用基础技术平台SDK开发微服务程序时,可以通过技术中台在线打包功能,将消息监听服务端以及独立系统微服务程序合并打包并得到一个软件安装包或docker镜像。然后,独立系统将其在服务器中安装并运行。如果使用Devops系统,可以通过持续部署功能完成镜像文件拉取与部署;技术中台服务监控中心会自动发现并注册服务。在之后微服务程序升级时,独立系统只需要重新将微服务程序打包安装即可。
日志中心采用ELK架构搭建分布式日志管理系统,将各类日志采集至日志中心统一管理。 日志中心管理的日志包括以下几种:
技术中台运行日志,包括用户、任务、消息、流程等模块的微服务程序运行时产生的日志信息,由程序自动采集并推送至日志中心。
独立系统运行日志,包括独立系统各类应用系统运行日志以及各专业业务模块日志信息。
独立系统间交互日志,包括调用接口产生的日志以及业务领域订阅与发布时产生的日志信息。
技术中台提供微服务接口API与页面组件两种通用服务类型,并结合业务场景灵活使用服务。
根据易用性、安全性等设计理念,提供可用易用、稳定高效的通用服务。
技术中台的门户、业务支撑系统功能均提供丰富全面的微服务API,专业平台在各环节根据实际业务需求可调用相应的API,自行处理API返回的结果数据。
技术中台提供统一的注册中心、鉴权认证、数据加密、安全策略、架构支撑等,同时,提供完整详细描述的API清单文档,包含调用API的标准代码,让平台容易上手。
技术中台公共微服务程序、各独立系统使用SDK包开发的微服务程序统一注册至注册中心,并通过服务管理系统进行登记,方便运维/开发人员查找接口从而进行程序调用。 技术中台提供安全网关供专业平台进行接口调用。接口调用过程:
  • Step1: 独立系统调用接口前,需将本专业应用/系统注册到基础技术平台进行身份认证,技术中台管理员审批后,返回密钥对信息给专业平台。
  • Step2:独立系统具体调用某接口时:
使用服务管理系统的服务接口查询功能,查找自己需要调用的服务接口。
使用身份认证得到的密钥向技术中台认证服务申请应用Token。
向微服务网关发起调用请求,将请求转发给具体微服务实例程序并将调用结果返回给独立系统调用方。
独立系统根据得到的结果自行处理数据。
技术中台提供页面形式的功能组件,独立系统根据实际业务需要通过配置即可嵌入到内部进行使用。 每个独立系统配置一次风格即可,具体可配置项如下:
整体配置
可配置页面的大小、是否自适应等属性
风格配置
包括主题颜色、字体样式大小、表头/表格高度等
布局配置
包括标题位置、页面按钮位置等
其它配置
包括列字段、列顺序等。