普元微服务平台EOS Platform 8全新发布

转载本文需注明出处:EAWorld,违者必究。

平台简介:

普元新一代应用平台EOS Platform 8已经全面拥抱微服务架构,支持分布式架构,为企业业务上云提供云原生应用的支撑。同时该版本完全支持Spring Boot应用开发、采用标准Maven、Git体系,平台更开放。

目录:

一、全面拥抱微服务的新平台
二、微服务平台特性速递
三、支撑微服务全生命周期建设的关键能力
四、微服务平台落地实践案例

一、全面拥抱微服务的新平台

普元开发平台拥有广泛的行业客户群体



普元应用开发平台作为国内领先的技术平台,已经广泛应用到金融、通信、能源、政府、大型企业等行业客户。典型客户包括工行、建行、国开、邮储、兴业等。同时通过与华为公司的合作,已经广泛应用到40多个国家。基于2015年《财富》中国前50强中,已经有28家在使用包括开发平台在内的普元产品。

企业数字化转型促使企业架构形态发生变化


随着互联网业务的高速发展,企业需要迫切的进行数字化转型,导致对企业IT架构以及企业应用架构需要快速响应业务需求,满足海量的并发请求。研发模式从瀑布模型转向为敏捷、到基于开发运维一体化的DevOps;应用架构也从传统SOA架构向微服务架构转型,从单体应用到微服务应用。

这迫切需要对企业的IT进行整体架构升级,支持分布式、云化、开发运维一体化。普元结合多年企业架构的经验,整体规划普元分布式平台总体架构。


普元分布式平台总体架构



分布式平台主要包括四大部分:微服务平台(EOS Platform 8)、DevOps平台、容器云平台、监控平台。分布式云平台实现应用的敏捷开发、交付,可靠运行,实现业务敏捷创新的IT技术支撑。

目前普元已经研发出三个产品:支持开发运维一体化的DevOps 5.2产品、基于Docker+K8s的容器云5.0产品、基于Spring Cloud体系的微服务平台EOS Platform 8.0。


普元微服务平台EOS Platform 8产品定位

普元微服务平台EOS Platform 8 逻辑架构



作为完整的微服务平台,需要系统性的提供开发工具(脚手架)与规范、运行能力支撑、管理监控三大块的能力。

普元微服务平台整体包括12个功能组件:Server(运行环境)、IDE(集成开发环境)、Governor(微服务管理平台)、IAM(统一认证平台)、Coframe(应用基础框架)、API Gateway(API网关)、Registry Center(注册中心)、Configuration Center(配置中心)、Log Center(日志中心)、APM(应用监控中心)、断路器监控中心、SDK(软件开发工具包);

每个具体功能组件主要提供的能力如下:

1.IDE(集成开发环境):IDE是集面向微服务应用的开发、组装、调试、维护、部署、管理和发布于一体的集成开发环境,提供了前端项目、后端项目、混合项目三种项目创建方式,可满足微服务前后分离、SOA架构两种模式。

2.Server (运行环境):Server是支撑微服务、SOA应用运行的基础环境,提供了日志、异常处理、负载均衡、熔断限流、应用发现等一系列基础能力。

3.Governor(微服务管理平台):Governor 是一套微服务管理平台,提供了:系统管理、应用管理、配置管理、日志查看、微服务监控等系列功能,负责对EOS开发的微服务应用、Governor 平台本身进行管理。

4.IAM (统一认证中心):IAM(Identity and Access Management 的缩写),即“身份识别与访问管理”,具有单点登录,认证管理和审计、租户管理、动态授权等功能。

5.Coframe (应用基础框架):Coframe是产品自带的开源应用基础框架,提供了资源管理、权限管理、用户以及角色管理等业务应用基础能力,用户可以根据自己的需要进行二次开发与扩展。

6.API Gateway(API网关):API Gateway是所有应用、终端、消费方统一接入系统微服务的入口。网关提供 REST/HTTP 的访问通道,可以对API进行注册、授权、路由配置、报文转换配置等,同时具备一套完整的API接口调用监控体系。

7.Registry Center (注册中心):注册中心提供服务发现以及服务注册的能力,各微服务启动时会向注册中心注册服务信息(例如IP、端口、微服务名称等),注册中心存储这些信息便于服务发现与寻址。

8.Configuration Center (配置中心):配置中心能够集中化管理应用不同环境和不同集群的配置。在 EOS Platform 8.0中,Governor(微服务管理平台)与配置中心进行集成,托管在配置中心的应用,管理人员可以通过 Governor 对相关应用进行配置修改和配置发布并实时推送。

9.Log Center(日志中心):日志中心是收集、缓冲、存储、展示的标准日志中心架构,收集各应用产生的本地日志数据,进行汇总,供最终检索。

10.Application Performance Management(应用监控中心):应用监控中心是适用于分布式系统的APM(应用程序性能监视器)工具,提供对分布式应用的性能指标监控能力。

11.Circuit Breaker Monitoring Center(断路器监控中心):断路器监控中心可定义一系列监控指标项,如:线程池、队列、请求数、成功数、失败数等,并可按应用、系统浏览监控信息。

12.SDK(软件开发工具包):应用开发过程中提供了一系列SDK使应用开发更方便和统一。包括服务发布相关的接口声明注解、功能权限校验注解,服务消费相关的客户端声明注解、熔断Fallback注解,服务实现相关的异常、日志SDK以及持久化相关的Mybatis、JPA 等内容。


普元微服务平台EOS Platform 8拥抱Spring Cloud体系


平台从技术栈的选型上,本着更开放的原则以及普元开源技术的选型标准,全面拥抱Spring Cloud体系,使得平台有更好的开放性,适用性更广泛。

具体各个组件的技术选型如下:

注册中心:Spring Cloud Eureka
配置中心:Ctrip Apollo
日志中心:FileBeat+ELK+Kafka
监控中心:SkyWalking
API网关:Spring Boot+自研
微服务容器:Spring Boot、Spring Cloud Feign、Spring Cloud Ribbon、Spring Cloud Hystrix
前端:VUE 、NUI(普元自研基于JQuery的前端框架)
访问认证:基于OAuth2协议的自研IAM组件


二、微服务平台特性速递

普元微服务平台EOS Platform 8 六大特性
 

特性一:双架构支持

平台支持微服务架构应用、同时支持SOA架构应用;

开发模式支持前后端分离开发模式、同时支持前后端混合开发模式;


特性二:可变部署架构

独立的配置中心、监控中心、日志中心、注册中心、API网关等组件,满足企业自身不同的环境;


特性三:ToC体验

基于VUE的交互方案,支持企业打造互联网体验的微服务应用;


特性四:全方位服务管控与治理

全面的服务、日志、链路等监控能力,为微服务应用运行提供全方位管控能力;

同时提供从域、系统、应用、实例、API等多级的服务治理模型,便于全面梳理企业软件资产;


特性五:丰富业务组件

提供IAM、Coframe等基础业务组件,加速微服务应用构建;


特性六:完善生态体系

支持与普元DevOps、容器云产品的无缝集成;

支持EOS7.6项目(SOA架构)快速迁移到EOS Platform 8微服务版本;

三、支撑微服务全生命周期建设的关键能力

开发期-微服务平台关键能力支撑



开发期,主要提供4方面能力:

1.一体化开发工具
提供微服务应用开发、调试、编译等一体化功能;IDE对微服务开发的一些最佳实践做了特定的固化,例如固定目录下的配置文件内容会自动同步到配置中心管理;

2.标准Maven项目模板
IDE支持前端、后端、混合三种项目类型,真没每种项目类型都会有特定项目模板;
基于项目模板可以快速支持其他的IDE工具开发,满足开发者的工具选择的诉求;

3.服务快速发布
支持Rest服务发布,支持WebService服务发布;
提供服务发布向导,支持逻辑流一键发布Rest、WebService服务,降低开发人员重复劳动;

4.丰富SDK
应用开发过程中提供了一系列SDK使应用开发更方便和统一。包括服务发布相关的接口声明注解、功能权限校验注解,服务消费相关的客户端声明注解、熔断Fallback注解,服务实现相关的异常、日志SDK以及持久化相关的Mybatis、JPA 等内容。


集成发布期-微服务平台关键能力支撑



集成发布这块,微服务平台非常方便的与普元DevOps产品结合,使用DevOps中的持续集成、持续发布能力,支持微服务应用的一键部署。

持续集成:对微服务平台开发的微服务,支持图形化定义持续集成,并提供丰富的Maven编译、代码安全扫描、单元测试、上传Nexus仓库等能力;针对已经定义好的构建定义,提供多种触发机制:定时执行、代码提交触发、手工执行等。

持续发布:通过DevOps提供的发布流水线,可以快速定义不同环境(开发环境、测试环境、预发环境、生产环境)下的流水线,快速将微服务一键发布到不同的目标资源上(物理机、虚拟机、容器云)。


运行期-微服务平台关键能力支撑



运行期,主要提供4方面能力:

1.支持No JEE、JEE环境
微服务应用支持FatJar与传统WAR两种模式;基于FatJar是以独立进程方式运行,WAR支持部署在传统应用服务器之上;

2.提供高可靠、高性能组件
平台提供高可靠平台组件,主要包括:API网关、注册中心、配置中心、日志中心、应用监控中心、断路器监控中心;
所有平台组件均提供高可靠的部署方式,避免存在单点;除了API网关外,其它组件的下线均不影响业务的运行;
平台组件在高性能方面做了可靠验证,其中基于API网关的技术已经在某客户实现了1亿次/天的业务交易量(和淘宝在一个调用量级);

3.开发的技术架构体系
全面拥抱支持Spring Boot体系;同时兼容EOS7.6版本的迁移升级;

4.适配底层多种基础设施
微服务应用支持部署多种基础设施:物理机、虚拟机、容器、各种IaaS平台、Caas容器云平台等。

管控期-微服务平台关键能力支撑



管控期,主要包括微服务管理、微服务监控两部分能力。

微服务管理
主要提供域管理、系统管理、应用管理、服务管理、配置管理、API管理,上面这些内容形成了软件资产化的管理能力;
同时提供针对业务应用的配置管理、网关路由管理、用户权限管理等;

微服务监控
提供系统拓扑、链路跟踪、健康检查、熔断限流、API调用、流量控制、黑白名单等;

四、落地实践案例及产品展示

截止目前,我们已经为邮储银行、国开行、中国人保寿险、太平洋保险、成都飞机工业、国家电力等大型客户,涉及到金融、保险、军工、能源等行业进行了平台的建设落地工作。



最后为大家展示微服务管理的部分界面:

微服务管理平台首页是一个DashBoard:主要概览的展示了系统数、应用数、服务数;给出了网关的两个统计图,一个是近12小时网关调用量,另外一个是近1小时网关调用Top5。

界面展示:微服务管理平台-概览


系统管理界面,主要展示了一个域下所有的系统。

界面展示:微服务管理平台-系统管理


应用管理,给出了一个具体系统下面所有的应用,包含应用的状态等基本信息。

界面展示:微服务管理平台-应用管理


针对应用提供应用分组能力,方便应用的蓝绿发布。

界面展示:微服务管理平台-应用概览


针对应用的分组,可以设置应用的路由策略。

界面展示:微服务管理平台-应用路由


查看当前应用对外提供哪些服务。

界面展示:微服务管理平台-服务提供


查看当前应用消费了哪些其它应用下的服务。

界面展示:微服务管理平台-服务消费



关于作者:刘相,普元软件产品部副总兼SOA&云计算产品线总经理。十年IT行业经验,专注于企业软件平台,在SOA、分布式计算、企业架构设计等领域。先后主导公司EOS7、Portal、云PAAS平台、云流程平台、BPM等系列产品的开发和设计工作。著有国内首本解析SpringBatch的中文原创图书《SpringBatch批处理框架》。


 

关于EAWorld:微服务,DevOps,数据治理,移动架构原创技术分享


 

猜你喜欢

转载自my.oschina.net/u/3920392/blog/2218544