1、微服务平台的发展趋势张明 关于我张明网易数帆 轻舟微服务产品经理 10余年云计算领域研发及产品设计经验,先后在华为,网易从事云计算、微服务产品规划工作 热爱技术的产品经理 对虚拟化、容器、容器网络、微服务、服务网格等领域有深刻的理解,目前专注于微服务、服务网格和云原生领域。微服务平台演进历史010203轻舟微服务平台介绍微服务平台选型建议目录 应用架构演进单体单体单体单体ESB单体单体单体微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务微服务垂直拆分:多个单体应用通过ESB实现系统互联的中心化架构单体架构SOA微服务水平拆分:分层的细粒度服务以RPC和
2、REST为代表的去中心化架构,解决服务重用问题 应用微服务化需要考虑哪些因素负载均衡服务发现序列化协议网络通信服务鉴权指标监控链路追踪日志分析熔断限流通信链路加密服务认证分流降级容错事务 微服务发展历程2011201220132014201520162017201820192020微服务1.0时代:基于框架的微服务微服务2.0时代:服务网格 微服务框架萌芽期Service业务逻辑自研SDK协议编解码服务注册发现服务路由负载均衡熔断降级互联网大厂早期微服务架构实践,通过自研组件实现大型应用的拆分:尚未形成微服务技术框架标准 尚未出现开源的组件,企业自研所需组件 开源微服务框架爆发期Service
3、业务逻辑开源SDK协议编解码服务注册发现服务路由负载均衡熔断降级互联网大厂微服务实践过程中,逐步形成了由一系列标准化组件组成的微服务框架事实标准,中小企业基于开源框架,开启了微服务实践之路:阿里Dubbo开源 Netflix 微服务技术架构开源 spring cloud项目推出 微服务框架成熟期随着Spring Cloud、Dubbo等开源微服务框架的广泛使用,公有云厂商率先推出了商用微服务框架,随后各大厂商陆续推出了支持私有化部署的商用微服务框架:统一管控、监控平台 统一技术栈 功能丰富,兼容开源Service业务逻辑商用SDK协议编解码服务注册发现服务路由负载均衡熔断降级Sidecar 开
4、源服务网格诞生服务网格为服务间通讯的基础设施层,通过一组轻量级网络代理(Sidecar Proxy)拦截流量进行服务治理:异构语言统一服务治理体系 应用逻辑代码和服务治理能力无耦合 应用程序对代理无感知Service业务逻辑轻量级SDK协议编解码服务路由负载均衡熔断降级服务注册服务发现Sidecar 商用服务网格推出微服务框架厂商,陆续推出了商用服务网格产品,在开源的基础上提供更高的性能,更完善的功能:提供统一管控平台 数据面性能优化 功能更加丰富Service业务逻辑轻量级SDK协议编解码服务路由负载均衡熔断降级服务注册服务发现Sidecar 统一微服务平台诞生统一微服务平台,支持Sprin
5、g Cloud、Dubbo等微服务框架和服务网格:统一管控平台 相互通信 平滑向服务网格迁移Service业务逻辑轻量级SDK协议编解码服务路由负载均衡熔断降级服务注册服务发现Service业务逻辑商用SDK协议编解码服务注册发现服务路由负载均衡熔断降级 开源微服务框架 vs 商用微服务框架配置参数分散,缺少管控入口技术栈分散,没有统一的标准注册中心、API网关等等众多组件需自行部署和维护功能不完善,例如开源Hystrix不支持动态配置未提供日志服务、分布式事务等组件统一的管控平台统一的技术栈用户无需关心组件部署,仅使用功能功能完善,提供丰富的治理能力组件更丰富 微服务框架 vs 服务网格Se
6、rvice业务逻辑SDK协议编解码服务注册发现服务路由负载均衡熔断降级SidecarService业务逻辑轻量级SDK协议编解码服务路由负载均衡熔断降级服务注册服务发现微服务架构服务网格开发语言限定,Spring Cloud仅支持Java开发语言基于方法级的服务治理不限定部署形态,支持虚拟机、容器等等性能影响小支持异构语言基于流量的服务治理依赖于K8S容器平台引入Sidecar,性能下降明显+开源服务网格 vs 商用服务网格Sidecar热升级Sidecar管理动态流量拦截Dubbo治理接口权限控制Thrift治理兜底路由动态降级静态降级流量穿梭Side