• 1. 企业服务化演进之路SOA面向服务架构聂钢 2016年4月24日
  • 2. 目录SOA服务框架演进总体概况单一应用架构垂直应用架构分布式服务架构弹性计算框架
  • 3. 服务框架演进总体概况单一应用垂直应用分布式服务弹性计算单一应用架构 垂直应用架构 分布式服务架构 弹性计算架构ORMMVCRPCSOA
  • 4. 单一应用架构当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。 此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。 数据库单节点 几乎无容灾 负载能力低 项目管理、维护简单 开发、测试、构建成本低 特点
  • 5. 垂直应用架构当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干的几个应用,以提升效率。 此时,用于加速前端页面开发的 Web框架(MVC) 是关键。 数据库Nginx访问静态资源、负载均衡 应用分离、依赖框架 安全性低 Session 持久化问题 特点NginxHtml js cssREST APIREST APITomcat……高速缓存Redis
  • 6. 垂直应用架构-应用分层ControllerServiceDAODomainsCommonView
  • 7. 分布式服务架构当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。 此时,用于提高业务复用及整合的 分布式服务框架(RPC) 是关键。 数据库主库小型机虚拟化 请求处理与业务拆分 应用服务化 同步异步拆分 数据库读写分离 运维难度大大增加 特点NginxHtml js cssHttps REST APIHttp REST APITomcat……高速缓存Redis、Memcached基于请求缓存 基于查询结果缓存 Session会话持久Gateway服务总线\注册中心Java应用AJava应用BJava应用C数据库读库数据库读库消息中间件监控平台调度中间件
  • 8. 分布式服务架构—ESB阶段1、接口技术的统一化 2、流程简单化 3、通过集成平台实现统一监控 4、业务模型统一化 5、业务系统间关系简单化ESB平台顺其自然的下坡路规范下的上坡路1、接口缺乏规范和标准 2、接口服务复用和监控困难 3、业务系统间紧耦合,难以扩展 4、流程越来越复杂11111111112341Web Services 2EJB34DB LINK统一的接口标准生活HTTP REST资产信用投资资金交易消息中心调度中心监控中心生活资产资金交易监控中心调度中心消息中心投资信用HTTP信用生活资产投资资金交易消息中心调度中心监控中心
  • 9. 分布式服务架构—ESB阶段集团 ESB平台A省 ESB平台B省 ESB平台C省 ESB平台D省 ESB平台E省 ESB平台A系统B系统其他A系统B系统其他A系统B系统其他A系统B系统其他A系统B系统其他A系统B系统其他互联 控制中心网络化运营分析: 任意两业务系统之间的服务调用最多经过两个集成平台节点,两个建设了ESB平台的省公司之间的服务调用不需要经过集团ESB平台。 最大限度地提高业务系统之间服务调用的性能; 网络化运营的外在表现是一个逻辑的服务ESB平台,外部业务系统无需关注网络化运营的内部实现;互联控制中心功能分析: 全网跨域服务路由的管理和下发; 纵向接口服务的监控、统计分析:各省及集团ESB平台都需要定时将跨域服务调用的运行监控数据上报给互联控制中心; 横向接口服务的监控、统计分析:互联控制中心从各省抽取该省内的接口服务目录及运行监控数据,实现集团对全国各省的服务监控。服务调用路由/运行状态的上报下发图例
  • 10. 分布式服务架构—ESB阶段ESB平台
  • 11. 分布式服务框架—RPC阶段资产平台财富顾问信用管家金融生活调度中心消息中心监控中心服务质量分析平台服务实时监控平台服务注册中心
  • 12. 分布式服务架构—RPC阶段集团 注册中心A省 注册中心B省 注册中心C省 注册中心D省 注册中心E省 注册中心A系统B系统其他A系统B系统其他A系统B系统其他A系统B系统其他A系统B系统其他A系统B系统其他服务管控 治理平台网络化运营分析: 任意两业务系统之间的服务调用可以跨注册中心直接调用。 最大限度地提高业务系统之间服务调用的性能; 网络化运营的外在表现是一个逻辑的服务群,外部业务系统无需关注网络化运营的内部实现;服务管控治理平台: 全网跨域服务的治理; 全网服务查找; 全网服务监控。服务注册服务管控治理图例
  • 13. Docker Container Docker Container弹性计算架构数据库主库容器级虚拟化 应用资源动态分配 离线数据采集分析系统 数据库读写分离 硬件成本下降 异地容灾 特点NginxHtml js cssHttps REST APIHttp REST APITomcat……高速缓存Redis、Memcached基于请求缓存 基于查询结果缓存 Session会话持久Gateway服务总线\注册中心Java应用AJava应用BJava应用C数据库读库数据库读库消息中间件监控平台调度中间件Docker CenterHDFSHiveHadoop日志收集平台Docker Center当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。 此时,用于提高机器利用率的 资源调度和治理中心(SOA) 是关键。 HBaseSpark
  • 14. 微服务架构服务单一责任服务按组织划分服务轻量级通信服务独立性服务进程隔离服务技术多样性
  • 15. 微服务架构实践IT 治理服务治理分布式服务弹性计算运行时部署服务生产者服务注册中心服务组件库服务消费者服务监控中心服务调度中心服务管控平台服务容器部署组件4.重启1.上传2.发布3.下载6.注册7.管理8.订阅9.通知10.调用11.监控12.查看同步异步初始化
  • 16. 谢谢!