Apache ServiceComb 开源微服务社区人及孵化器候选项目 管理与监督基金会商 务与日常事务 IPMC Apache软件基金会 LC3大会 正式开源 2017.06 2017.11 2018.10 捐赠给Apache 进入孵化器 成为Apache 顶级项目 首个Apache微服务顶级项目 提供一站式的微服务开源解决方案,致力于帮助企业、用户和开发 者将应用轻松微服务化上云,实现对微服务应用的高效运维管理 华为开始实践 微服务 SpringMVC 编程模型 限流 负载均衡 分布式追踪 动态配置 服务注册 服务度量 通信模型 REST 边缘服务 熔断/容错 安全认证 分布式事务 标准契约管理 微服务脚手架 配置治理中心 POJO 编程模型 JAX-RS 编程模型 通信模型 RPC 插件式扩展 开箱即用 编程/通信模型分离 轻量级边缘服务 纯异步内核 内置监控治理 分布式事务方案 标准契约管理 复杂留给自己,极简留给用户 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 微服务契约工具 19 年Apache ServiceComb新品发布0 码力 | 15 页 | 2.86 MB | 1 年前3
微服务的设计原则与⽣态系统 - 王磊Architecture Conference 2017.4 https://www.continuousdelivery.com/ • 缩短交付周期 • 降低发布⻛风险 • 质量量内嵌 组织协同 环境管理理 数据管理理 松耦合架构 反馈验证 持续集成/部署 内建质量量 微服务架构是松耦合架构机制的⼀一种实现 为什什么基于DevOps? ● Communication ● Automation Complexity • Performance • Testability 微服务架构的设计原则 • 竞争能⼒力力平衡 • 围绕业务构建 • “去”中⼼心化 • ⾃自动化“⼀一切” • 业务领域模型(Domain) • 通⽤用语⾔言(Ubiquitous language) • 界限上下⽂文(Bundle context) 围绕业务-构建团队 围绕业务-构建团队 VS 服务A 开发 ⽔水平伸缩后服务的实例例数量量变化 • 同⼀一个结点运⾏行行多个服务(端⼝口不不同) 集中配置管理理 配置信息的管理理 50 • 与服务在同⼀一个包中 • 使⽤用隔离的配置⽂文件 • 使⽤用环境变量量管理理 配置信息管理理的挑战 51 • 动态更更新配置信息 • 多实例例间的同步 • 配置信息的版本管理理 容错(Resilient) 52 • 降级 - 关闭⾮非核⼼心业务,保证核⼼心业务可⽤用0 码力 | 62 页 | 6.65 MB | 1 年前3
ServiceComb在Service Mesh的
探索与思考Confidential Service Mesh - 2017年由William Morgan提出 - 一种基础设施层,服务间通信通过Service Mesh进行 - 一种TCP/IP之上的网络模型 - 轻量网络代理,与业务部署在一起 - 可靠传输复杂拓扑网络中的请求 - 将应用变为现代的云原生应用 4 Application Service Mesh Transport Network 注册发现 - 统一缓存模型 - 可灵活选择客户端注册发现,与平台注册 Registrator Service center Istio Kuberne tes Service Discovery Instance Cache Management Service center Huawei Confidential 9 基于微服务元数据的路由管理 • 匹配请求者header 匹配请求者header • 匹配请求者元数据信息 • 按权重引流 • Router使用统一配置模型,支持插件对接不同生态 请求特征: • Service Name • Headers • Consumer metadata Resolve 决定要访问的服务名后即可开 始匹配路由规则,比如 • 系统中稳定运行着A服务, 版本是1.0,最近新上线了 1.1版本,你希望只让一部 分用户进行体验,那么你可0 码力 | 21 页 | 8.48 MB | 1 年前3
微服务创新新品发布使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 分布式系统配置中心 服务中心异构通信 多语言运行环境 微服务鉴权 微服务契约工具 Apache ServiceComb 面对用户痛点持续创新 契约提取 代码生成 文档制作 契约校验 ServiceComb SpringCloud …… ServiceComb toolkit 划分微服务 (含依赖关系) 定义契约 (接口和模型) 发布契约 ServiceComb 契约开发工具 开发微服务 测试微服务 客户+集成商 软件开发商 部署微服务 契约仓库 微服务 运行环 境 验收微服务 协同企业遗留系统微服务化 提供契约、代码、文档相互转换和校验的能力,帮助用户快速构建基于流行微服务框架和编程模型 的微服务工程,降低微服务学习成本,使能用户聚焦业务开发,提升遗留系统重构、开发效率。 • 契约生成微服务工程:一键生成基于ServiceComb/SpringCloud的微服务工程。 • 代码提取契约:一键从基于SpringMVC/POJO/JAX-RS编程模型开发代码提取OpenAPI契约。 • 契约校验:一键校验实际代码的实现是否与约定契约一致性。0 码力 | 12 页 | 2.96 MB | 1 年前3
ServiceComb雄关漫道ServiceComb的发展路线图 • 如何加入ServiceComb社区 微服务架构面临的问题 • 分布式系统问题 • 服务注册发现 • 容错熔断机制 • 限流降级 • 运维相关问题 • 动态配置管理 • 系统监控 • 路由管理 微服务的雄关漫道 • 服务框架 • Service Mesh ServiceComb开源微服务解决方案 ServiceComb微服务解决方案 Java编程 (POJO/Spring Prometheus Dubbo ServiceMesh K8S 对接行业解决方案 ServiceComb项目介绍 • Java Chassis • 高性能的微服务框架,提供服务注册发现以及动态配置管理,以及限流降级,容错熔 断等服务治理功能 • Service Center • 基于Etcd高性能,高可用服务注册中心 • Saga • 微服务事务最终一致性问题解决方案 • 提供一个集中 q=incubator-servicecomb ServiceComb Java Chassis的架构图 通信模型 (序列化、 传输协议) 编程模型 (Spring MVC JAXRS, POJO…) 服务契约 (OpenAPI) 服务发现 熔断 负载均衡 配置 跟踪 … 运行模型 围绕服务契约进行开发以及运维 异步化支持 • 基于Vertx提供的异步内核 • 保持高性能的同时支持同步调用方式0 码力 | 20 页 | 4.00 MB | 1 年前3
ServiceComb介绍ServiceComb的发展路路线图 • 如何加⼊入ServiceComb社区 微服务架构⾯面临的问题 • 分布式系统问题 • 服务注册发现 • 容错熔断机制 • 限流降级 • 运维相关问题 • 动态配置管理理 • 系统监控 • 路路由管理理 微服务框架与解决⽅方案 • 服务框架 • Service Mesh ServiceComb开源微服务解决⽅方案 ServiceComb微服务解决⽅方案 Java编程(POJO/ Dubbo ServiceMesh K8S 对接⾏行行业解决⽅方案 ServiceComb项⽬目介绍 • Java Chassis • ⾼高性能的微服务框架,提供服务注册发现以及动态配置管理理,以及限流降级,容错熔 断等服务治理理功能 • Service Center • 基于Etcd⾼高性能,⾼高可⽤用服务注册中⼼心 • Saga • 微服务事务最终⼀一致性问题解决⽅方案 ServiceComb Java Chassis的架构图 通信模型 (序列列化、 传输协议) 编程模型 (Spring MVC JAXRS, POJO…) 服务契约 (OpenAPI) 服务发现 熔断 负载均衡 配置 跟踪 … 运⾏行行模型 围绕服务契约进⾏行行开发以及运维 异步化⽀支持 • 基于Vertx提供的异步内核0 码力 | 16 页 | 877.58 KB | 1 年前3
ServiceComb 的前世今生部署到生成 环境 开发 开发 bugs 旧版本持续运行 Speed & Safety 面临的问题 • 企业应用和互联网应用的不同? • 如何做到不同ISV的应用互联互通统一管理? • 怎么才能加快微服务的开发? • 微服务化后如何保证性能? • 如何进行统一的路由控制? 企业应用和集成 Java 注册中心、治理中心 Go 服务 契约 生成工具 支持灰度发布、服务分组等高级管理特性 微服务 ServiceComb 开发框架 通信模型 (序列化、传输协 议) 编程模型 (同步、异步、 Reactive…) 服务契约 (OpenAPI) 服务发现 熔断 负载均衡 配置 跟踪 … 运行模型 还远远不止这些… 动 日志/监 控 告警 诊断 治理/配 置 扩容 缩容 回滚 停止/卸 载 微服务运维生命周期 管理 创建 编码 编译 构建 部署 测试 验收 发布 删除 微服务开发生命周期 管理 从软件到服务 微服务治理 微服务部署平台(PaaS) 微服务开发 微服务基础治理 微服务高级治理 服 务 发 现0 码力 | 16 页 | 1.45 MB | 1 年前3
Apache ServiceComb 微服务创新项目解读使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 微服务契约工具 Apache ServiceComb [Website] Toolkit Toolkit - 遵循OpenAPI的微服务开发、改造工具 提供遵循OpenAPI规范的API、代码、文档相互转换和校 验的能力,帮助用户快速构建基于流行微服务框架和编程 模型的微服务脚手架工程,提升遗留系统重构、开发效率 • 项目地址 https://github.com/apache/servicecomb-toolkit • 开发计划 - 支持API生成Spring toolkit 划分微服务 (含依赖关系) 定义契约 (接口和模型) 发布契约 ServiceComb 契约开发工具 开发微服务 测试微服务 客户+集成商 软件提供商 部署微服务 契约仓库 微服务 运行环 境 验收微服务 协同实现基于契约(API)的数据、服务标准化管控 划分微服务 (含依赖关系) 定义契约 (接口和模型) 发布契约 微服务 运行环 境 验收微服务 基于OpenAPI规范0 码力 | 13 页 | 1.24 MB | 1 年前3
张波-虎牙直播在微服务改造中的实践30s内 故障屏蔽实效 之前10分钟 1分钟内 为什么选择Nacos 对比项目\注册中心 Spring Cloud Nacos Spring Cloud Eureka CAP模型 支持AP和CP模型 AP模型 客户端更新服务信息 使用注册+DNS-f+健康检查模式。 DNS-F客户 端使用监听模式push/pull拉取更新信息 客户端定时轮询服务端获取其他服务ip信息并对 比,相比之下服务端压力较大、延迟较大 Nacos可用根据业务和环境进行分组管理 不支持 权重 Nacos默认提供权重设置功能,调整承载流量压 力 不支持 厂商 阿里巴巴 Netflix 服务注册发现对比 配置中心对比 对比项目/配置中心 apollo nacos 开源时间 2016.5 2018.6 配置实时推送 支持(HTTP长轮询1s内) 支持(HTTP长轮询1s内) 版本管理 自动管理 自动管理 配置回滚 支持 支持 权限管理 支持 待支持 Istio/Pilot Nacos xDS xDS xDS 服 务 发 现 服 务 发 现 配 置 管 理 SMI Nacos 支持Istio服务发现 支持Istio服务发现和配置管理 支持xDS协议 支持SMI xDS 关注 ServiceMesher 微信公众号 获取社区最新信息 关注 金融级分布式架构 微信公众号 获取 SOFAStack 最新信息 ServiceMesher0 码力 | 27 页 | 1.03 MB | 1 年前3
Java Chassis通信处理详解 - 通信优化实践通信优化实践 议题 问题不挑战 整体线程模型 Consumer Producer 问题不挑战 消费者 编程 模型 透明 RPC Spring MVC Transport Highway Vertx REST Servlet REST 生产者 编程 模型 透明 RPC JAX-RS Spring MVC RPC还是REST,传输方式决定编程模型 2. 丌同开发人员熟悉丌同的编程模型 3. RPC、REST的治理如何迚行 4. REST性能低 5. Reactive还是同步 ServiceComb的同步 仅仅是指编程模型上的同步,跟网络通信无关 因为所有场景下网络操作都是异步的 •Producer •Consumer 整体线程模型 Producer Consumer Highway client-原始单连接模型 Eventloop TcpClientConnecton 业务线程 …… 业务线程 Vertx Message Buffer Connection.send -> Socket.write(buf) Consumer Highway client-优化单连接模型 Eventloop TcpClientConnecton0 码力 | 17 页 | 2.22 MB | 1 年前3
共 44 条
- 1
- 2
- 3
- 4
- 5













