企业微服务中台演进和落地实践

展开查看详情

1.云+社区技术沙龙

2.企业微服务技术中台演进和实践 韩欣 Tencent Engineering Director

3.SPEAKER 韩欣 腾讯云中间件微服务FT负责人 腾讯云高级工程师,微服务平台,消息队列,API网关等产品的 负责人,负责中间件相关产品的规划,架构和落地实施。有超过 十二年的研发架构经验,先后在腾讯百度负责过腾讯广点通实时 推荐系统,腾讯手机QQ空间,百度im+即时通讯平台,百度知秋 智能客服等产品的研发和架构工作。从0到1构建了腾讯云中间件 TSF微服务技术中台。

4.企业微服务中台演进和落地实践 01 架构和云计算技术的演进 微服务的前世今生 02 中台解决的问题和挑战 中台架构是什么 03 TSF微服务技术中台的实践 微服务场景下中台的落地

5.什么是微服务 Martin Fowler总结亚马逊、NetFlix等互联网架构实践,提出了Microservice(微服务)架构的概念: 如何界定? 它是一种 将应用构建成一系 敏捷 列按业务领域划分模块的、 • 多小算小:代码行数?重写时间?跟语言、 小的自治服务的 软件架构方 持续交付 小 技能相关,都不合适。亚马逊认为:由2- 独 Pizza团队端到端负责1个或1组服务,大小 式。倡导将复杂的单体应用拆分为 是合适的 若干个功能简单单一、松耦合的服 • 区别于传统单体应用:各个模块、组件或动 务,这样可以降低开发难度、增强 态库集成在一个大进程中运行 扩展性、便于敏捷开发,及持续集 成与交付活动 轻量通信 松耦合 • 区别于传统SOA架构:基于重型总线ESB、 Centralized、Governance集中管控的架构 • 每个微服务可独立编译(无二进制接口依 专注单一 赖),独立部署(无部署顺序依赖),独立 业务能力 运行(无启动顺序依赖)

6.企业IT架构的变迁 传统“中心化”(ESB) 去“中心化”的 传统IOE架构 系统架构 微服务架构 ⚫ 每个应用彼此没有太大关系,按烟囱式 排列,唯一的共通点在于都与底层的数 ⚫ 服务调用者与服务提供者通过企业服务 据库相连; 总线相连接; ⚫ 业务系统的扩展没有瓶颈,只需按照业 ⚫ 每个应用都比较庞大,同时需要连接多 ⚫ ESB成为瓶颈:无论在性能上还是成本 务发展需要进行扩展; 个数据库; 消耗上,ESB都会导致瓶颈出现; ⚫ 敏捷,迭代速度可以非常快; ⚫ 架构中的应用数量较少,应用与应用之 间的关系简单

7.IT架构的进化 单体架构 SOA服务化架构 微服务架构 M VC架构 垂直 解耦 组件化 SOA服务化架构 表示层 接口标 准化 + + 异构 业务逻辑层 技术 RPC 云化 容器 数据访问层 通信 ESB Dev 分布式 敏捷 Ops 1990~ 2000~ 2010~ J2EE ESB、SOAP Spring Cloud、Docker、DevOps

8.从SOA到微服务,是什么在催生变化? 微服务 SOA 基于X86架构的廉价硬件 + 分布式软 件的模式在互联网行业得到了大规模 应用,分布式架构日趋成熟。 轻量级通信REST兴起 企业集成总线ESB是实体总线,性能 线性扩展能力有限 基础设施服务化、自动化,降低应用 部署、升级和管理成本,逐渐成为一 种趋势。 SOAP通信太沉重 硬件负载均衡器的压力,会随着不断扩 容逐渐增加,硬件成本节节攀升 ✓ 互联网高速发展: ✓ 敏捷开发: ✓ 云化: • 需求变化快和用户群体庞大 持续迭代和价值特性的小批量快速交付 基础设施服务化、自动化,降低应用部 署、升级和管理成本

9.云计算技术的发展和演进 应用 智能客服,工业互联网,零售,大数据。。。 数据 DB,日志 运行时 Serverless,service mesh,jvm 中间件 MQ,Mysql,Redis,MicroService 容器 Docker,kubernetes,swarm,rancher 操作系统 centos,ubuntu,redhat 虚拟化 KVM,VMWARE,CPU/服务器/存储/网络虚拟化 服务器 CVM,EC2,裸金属,黑石 存储 CBS,COS 网络 VPC,VIP,EIP,Vlan,子网

10. 云计算技术层次架构 IaaS PaaS SaaS 用户管理 业务性 附加值 应用 应用 应用 数据 数据 数据 运行时 运行时 运行时 中间件 中间件 中间件 容器 容器 容器 操作系统 操作系统 操作系统 虚拟化 虚拟化 虚拟化 服务器 服务器 服务器 存储 存储 存储 通用性 网络 网络 网络 同质化 云厂商管理

11.微服务与容器 微服务-应用层演化 容器是资源层演化 演进方式:自上而下 演进方式:自下而上 单体应用 SOA架构 微服务架构 物理机 虚拟机 容器化 系统为单位 MVC层级 原子粒度服务 粗粒度 细粒度 微粒度

12.微服务与RPC框架 微服务-架构方法 RPC框架-业务运行载体 服务治理 通讯协议 RPC/REST DEVOPS 高性能 同步异步 敏捷 多线程多进程 SpringCloud/Service Mesh GRPC/Dubbo/Thrift…

13. • 前提条件检查:如认证,黑白名单,ACL检查 微服务与ServiceMesh • 配额管理:限流 • 遥测报告: 日志,监控,metrics 微服务和基础设施的中介层,将 服务发现,配置,底层抽 • 升级流量(加密) 策略决策从应用移出并用配置替 提供服务间认证和终端用户认证 象,编码规则,管理 • 身份认证 代 使用交互TLS,内置身份和凭据 Envoy • 密钥管理 • 服务发现 管理 • 通讯安全 • 负载均衡 • 访问控制 • 请求路由 • 基于属性 • 故障处理 控制 • 基于角色 • 故障注入 面板 • 授权钩子 • 规则配置 • 审计 • 监控资源的使用者 数据 面板 标配Envoy,但是Linkerd和nginmesh 都在istio集成

14.企业微服务中台演进和落地实践 01 架构和云计算技术的演进 微服务的前世今生 02 中台解决的问题和挑战 中台架构是什么 03 TSF微服务技术中台的实践 微服务场景下中台的落地

15.电商秒杀系统的挑战 1、对现有网站业务的冲击 2、高并发下对应用数据库的压力 3、下单控制 4、秒杀开始的控制 5、下单前置检查 6、定时上架 7、减库存和秒杀的一致性 。。。

16.零售公司转型的挑战 对账系统 百货 服装 订单 渠道 商品 库存 订单 渠道 商品 库存 会员 营销 支付 分析 会员 营销 支付 分析 组织 供应商 采购 分销 组织 供应商 采购 分销 促销 流程 权限 日志 促销 流程 权限 日志 秒杀系统 ……. ……. 大中台

17.中台战略的意义和目标 目标 协助业务进行快速化的落地实施, 改造,试错,转型 围绕业务组织的,可 复用能力的有机整合 收益 提升组织效率,降低系统成本

18.中台架构层次 业 务 智慧零售 金融应用 政企应用 互联网应用 工业物联网应用 中 台 分布式调用监控 服务降级 应用弹性扩缩容 消息队列 云企业总线 负载均衡 持续集成、开发 生命周期管理 技 术 日志中心 API Gateway 服务发布、回滚 服务注册、发现 中 台 服务鉴权 Kafka大数据套件 分布式配置服务 熔断服务 调用链日志 蓝绿发布 IoT GateWay 分布式事务服务 私有网络 裸金属服务器 TCE专有云 全球加速网络 云 基 云数据库 云服务器 专线加速 云存储 础

19.零售中台架构 RFID EZR POS 数云 企业微信 喵街 云店 前台 服务注册 API网关 API网关 后台 认证 限流 鉴权 缓存 文档 过滤 监控 负载均衡 认证 DRP 链路追踪 零售业务中台 限流 PLM 技术 日志服务 中台 鉴权 仓储 会员中心 营销中心 支付中心 分析中心 弹性扩缩容 缓存 财务 熔断服务 订单中心 渠道中心 商品中心 库存中心 文档 人资 生命周期管理 促销中心 流程中心 权限中心 日志中心 过滤 合同 服务鉴权 蓝绿发布 采购中心 分销中心 监控 预算 组织中心 供应商中心 云服务器 云存储 云数据库 专线加速 云基础资源

20.技术中台解决问题之道 服务限 动态伸 流 缩 分布式 缓存 服务路 分布式 … 由 配置 分布式 调度 分布式 服务熔 事务 断 消息队 列 框架和运行时 管控和支撑

21.技术中台面临的挑战 频率控 资源管 服务框 时序数 运行时 制 理 架 据库 持续发 消息队 配置管 就近访 降级 布 列 理 问 任务调 事务管 API网 全链路 ID生成 度 理 关 压测 调用权 化繁为简 持续集 分布式 跨集群 依赖分 成 缓存 限 访问 析 Servic 全链路 灰度发 API治 eMes 容灾 Tracin 布 理 g 项目管 h 版本管 容器调 深度抽象 数据库 理 度 监控 理 读写分 集群管 分布式 熔断管 理 容错 日志 离 理 需求管 慢查询 弹性伸 缩 限流 告警 理 分析

22.企业微服务中台演进和落地实践 01 架构和云计算技术的演进 微服务的前世今生 02 中台解决的问题和挑战 中台架构是什么 03 TSF微服务技术中台的实践 微服务场景下中台的落地

23.TSF是什么? 一个基于微服务的提供面向业务开发过程整体技术解决方案的技术中台 CloudNati Spring Service API TSF ve Cloud Mesh GateWay 分布式事 容器 虚拟机 调用链 务 服务治理 告警 监控 ……..

24.TSF微服务技术中台核心能力 微服务框架 服务治理 Spring Cloud,Dubbo,ServiceMesh多种框架的能力 提供服务注册与发现/服务鉴权/服务路由/服务限流 提供业务接入和适配 /服务调度等基础微服务治理能力 TSF技术中台 DEVOPS 数据化运营 提供敏捷开发到CI/CD的全流程一站式解决方案, 提供多维度的数据化能力,整合给业务方进行业务 打通从开发到发布的各环节 运营 服务化能力支撑 提供连接其他资源的能力,比如Redis,分布式数据库 中间件,kafka,CMQ等等,提供统一能力输出给业务

25.TSF技术中台架构 核心能力 • 服务治理 • 应用生命周期管理 • 配置中心 • 分布式事务 • 数据化运营:日志、监控、告 警、调用链 扩展功能 • 分布式调度 • 微服务API网关 • 打通消息队列CMQ/Ckafka • 分布式配置

26.微服务框架 Spring Spring Cloud 微服务A Go应用A’ 应用B Cloud应用A 微服务B SDK SDK Mesher Spring 微服务C Python应用C MVC应用D 微服务D Mesher Mesher 微服务E Dubbo应用E Dubbo应用F 微服务F SDK SDK

27. 微服务治理 服务鉴权 服务路由 服务限流 服务容错 服务熔断 服务降级 鉴权模式: 路由模式: 限流粒度: 容错级别: 隔离级别: 降级维度: • 白名单(允许调用) • 权重路由 • 全局限流 • FailOver • 服务隔离 • Api维度 • 黑名单(拒绝调用) • FailFast • 标签路由 • 标签限流 • 实例隔离 • 标签维度 • Failback • 接口隔离 场景举例: • Forking 场景举例: 场景举例: 场景举例: 位置数据服务仅允许用户 ⚫ 灰度发布功能 核心服务设置全局限流,限 场景举例: 针对不同的api设置不同的降 ID=1010的用户访问,开发者可 场景举例: 以设置鉴权白名单,自定义标签 ⚫ 多机房路由优先调用同地 流阈值为1秒钟10万次调 可以针对某服务配置熔断时 级等级,当服务到达降级阀 可以分别针对于重要api和不 用户ID=1010。 机房; 用。 候进行api隔离,当某api失 值(处理能力),会优先放通 重要api的请求设置FailOver ⚫ 部分用户账号内测功能; 败率比较高的时候,只熔断 高优先级的api,拒绝优先级 和FailFast策略,在处理能力 ⚫ 保障重要服务的运行质 掉对应的api,不影响其他 低的api。 恒定情况下,尽量保证业务 量、实现前后端分离、读 的可用性。 api的调用。 写分离等功能;

28.资源管理 概念及关系 集群(容器或虚拟机) 命名空间 部署组 应用 机器节点

29.应用管理 • 批量部署 • 版本管理 • 灰度发布 • 优雅启停 • 弹性伸缩 • 自定义部署脚本 • 包管理&镜像管理 • 健康检查 • 监控统计