庖丁解牛:华为云微服务工具解放开发者服务A 服务B 步骤2:通过表结构调整, 将不同的数据库进行解耦, 防止一个微服务跨库访问 (反范式、服务重构等) 微服务数据库 A库 B库 服务A 服务B 步骤3:大表水平拆分,实 现水平扩展,提升访问速度 (分区分库) 步骤4:根据表结构变化,自动调整DDL/CRUD等SQL语句自动生成java的数据访问服务 步骤5:数据表执行、数据搬迁 业务应用层 业务应用层 业务应用层 通过对表的关联 独立服务中 Huawei Confidential 12 微服务架构下,API管控的挑战 • API在微服务架构下爆炸性增长 • 移动互联网、物联网 • API是技术leader和架构师的控制力,API==契约 • API First,解耦各个服务的开发者 Huawei Confidential 13 ServiceStage契约管理工具—管控分离 Copyright©2018 Huawei0 码力 | 14 页 | 1.54 MB | 1 年前3
张波-虎牙直播在微服务改造中的实践自注册、第三方注册、注册中心主动同步,异构微 服务相互调用困难;公共DNS不稳定,解析结果生 效慢,解析失败率高;DNS无法提供内网环境的就 近接入能力,内部服务调用无法实现就近访问。 目标 DNS解析成功率 100% 公共DNS分钟级生效 内部DNS秒级生效 基于IP+CMDB实现就近访问能力 11 dns当前现状 1、依赖公共localDNS,解析不稳定,延迟大 落地效果 12 平均解析时间 之前200ms+ 现在1ms以下 健康检查模式/方式 支持服务端/客户端/关闭检查模式,检查方式有 tcp、http、sql。支持自己构建健康检查器 客户端向服务端发送http心跳 负载均衡 支持 支持 手动上下线服务方式 通过控制台页面和API 通过调用API 跨中心同步 支持 不支持 k8s集成 支持 不支持 分组 Nacos可用根据业务和环境进行分组管理 不支持 权重 Nacos默认提供权重设置功能,调整承载流量压0 码力 | 27 页 | 1.03 MB | 1 年前3
《Saga分布式事务解决⽅案与实践》演讲者/姜宁• 两个Saga事务同时访问扣款账号,⽆无法看到退款 (脏读取问题) • 在⼀一个Saga事务内,数据被其他事务修改前后的读取值不不⼀一致(模糊 读取问题) http://microservices.io/microservices/general/2018/03/22/microxchg-sagas.html 如何应对隔离性问题 • 隔离的本质是控制并发,防⽌止并发事务操作相同资源⽽而引起结果错乱 Started A Started B Started Saga Started 未来的开发计划 • Alpha⾼高可⽤用多租户架构 • 基于消息队列列的服务 • 提供TCC的协调控制服务 • 通过Omege提供幂等操作功能 • 可视化的事务拓拓扑,定位异常最多服务 • Omega进⼀一步解决多线程间共享调⽤用链问题 http://servicecomb.incubator0 码力 | 33 页 | 2.38 MB | 1 年前3
走进开源 - Apache ServiceCombhttp://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb 自由软件和商业软件 之间的折中 遵循版权前提下,可以自由访问、使 用、改变和共享,也可用做商用目的 开源发展第二阶段 [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb • 源代码开放,可自由访问、使用、修改和共享 • 开源许可协议的选择 • 开放式合作 • 无厂商绑定 • 没有歧视 • 可用做商用目的 开源的定义 [社区网站] http://servicecomb.apache Non- affiliation Respect for fellow develope rs 根据个人贡献获得价值, government by merit 多样化的社区,防止单一公司的控制,鼓励 协同开发 “community over code” 决策透明公开:讨论,决定和存档均基于 mailing list 商业友好的开源许可证, Apache项目使用 permissive license的Apache0 码力 | 28 页 | 1.92 MB | 1 年前3
开源开发者的一天 - Apache ServiceCombhttp://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb 自由软件和商业软件 之间的折中 遵循版权前提下,可以自由访问、使 用、改变和共享,也可用做商用目的 开源发展第二阶段 [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb • 源代码开放,可自由访问、使用、修改和共享 • 开源许可协议的选择 • 开放式合作 • 无厂商绑定 • 没有歧视 • 可用做商用目的 开源的定义 [社区网站] http://servicecomb.apache Non- affiliation Respect for fellow develope rs 根据个人贡献获得价值, government by merit 多样化的社区,防止单一公司的控制,鼓励 协同开发 “community over code” 决策透明公开:讨论,决定和存档均基于 mailing list 商业友好的开源许可证, Apache项目使用 permissive license的Apache0 码力 | 31 页 | 2.02 MB | 1 年前3
《Saga分布式事务解决⽅案与实践》演讲者/姜宁• 两个Saga事务同时访问扣款账号,⽆无法看到退款 (脏读取问题) • 在⼀一个Saga事务内,数据被其他事务修改前后的读取值不不⼀一致(模糊 读取问题) http://microservices.io/microservices/general/2018/03/22/microxchg-sagas.html 如何应对隔离性问题 • 隔离的本质是控制并发,防⽌止并发事务操作相同资源⽽而引起结果错乱 throw ex record tx aborted event compensate 未来的开发计划 • Alpha⾼高可⽤用多租户架构 • 基于消息队列列的服务 • 提供TCC的协调控制服务 • 通过Omege提供幂等操作功能 • 可视化的事务拓拓扑,定位异常最多服务 • Omega进⼀一步解决多线程间共享调⽤用链问题 https://issues.apache.org/jira/projets/SCB0 码力 | 39 页 | 2.78 MB | 1 年前3
ServiceComb在Service Mesh的
探索与思考按权重引流 • Router使用统一配置模型,支持插件对接不同生态 请求特征: • Service Name • Headers • Consumer metadata Resolve 决定要访问的服务名后即可开 始匹配路由规则,比如 • 系统中稳定运行着A服务, 版本是1.0,最近新上线了 1.1版本,你希望只让一部 分用户进行体验,那么你可 以定义Header带有device- os=android就将95%流量转 Confidential 19 Mesher技术路线图 支持http协议 支持注册发现 支持路由管理 支持熔断,限流,负载均 衡等动态配置管理 支持TLS证书托管 插件化模块 1.0 支持Istio作为控制面板 支持发现 支持路由管理 支持Citadel安全管理 1.6 泛服务化,Mysql支持 1.8 支持grpc协议 支持本地健康查询 Sidecar Injector 1.5 目前版本 支持per0 码力 | 21 页 | 8.48 MB | 1 年前3
微服务架构与领域驱动设计 - 王磊领域驱动设计解决的两个核⼼心问题: 1.业务架构如何合理理的设计划分? 2.技术架构与业务架构保持⼀一致? 领域驱动设计是⼀一种设计⽅方法,围绕业务概念构建领域模型, 并通过分离技术实现的复杂性,从⽽而控制软件演化的复杂度。 Tacking Complexity in the heart of software �9 微服务架构与领域驱动设计? �10 • 能有效⽀支撑演进式架构 微服务架构与领域驱动设计 Value Object - 值对象 • 通过值确定对象的等价性 Domain Services - 业务逻辑 Aggregate - 聚合(根) • ⼀一组实体对象和值对象的集合 • 外部对聚合的访问通过聚合根 Factories - 对象⼯工⼚厂 Repository - 存储机制 Tactical-战术建模 领域驱动设计的架构 �16 Domain Model • 核⼼心的领域0 码力 | 28 页 | 1.84 MB | 1 年前3
ServiceComb介绍运⾏行行模型 围绕服务契约进⾏行行开发以及运维 异步化⽀支持 • 基于Vertx提供的异步内核 • 保持⾼高性能的同时⽀支持同步调⽤用⽅方式 • 将通信线程与业务处理理线程分离 • 操作级别线程池控制,⽀支持隔离仓 • ⽀支持多种异步编程接⼝口 • CompletableFuture • RxJava • Reactive Stream • ……. Process Event-Loop Boot 2.0 ⽀支持 脚⼿手架应⽤用示例例 服务中⼼心 多数据中⼼心⽀支持 契约测试 微服务管理理控制 开源配置中⼼心 对接多监控系统 Service Mesh 多语⾔言微服务⽀支持 监控管理理对接 多协议对接 微服务事务协调器器 服务端⾼高可⽤用 管理理控制台 TCC事务协调 如何加⼊入到ServiceComb社区 • 线上 • 关注ServiceComb微信⼩小助⼿手,0 码力 | 16 页 | 877.58 KB | 1 年前3
ServiceComb雄关漫道配置 跟踪 … 运行模型 围绕服务契约进行开发以及运维 异步化支持 • 基于Vertx提供的异步内核 • 保持高性能的同时支持同步调用方式 • 将通信线程与业务处理线程分离 • 操作级别线程池控制,支持隔离仓 • 支持多种异步编程接口 • CompletableFuture • RxJava • Reactive Stream • ……. Process Event-Loop Process Java 9支持 Spring Boot 2.0 支持 脚手架应用示例 服务中心 多数据中心支持 契约测试 微服务管理控制 开源配置中心 对接多监控系统 Service Mesh 多语言微服务支持 监控管理对接 微服务事务协调器 服务端高可用 管理控制台 同步异步事件支持 如何加入到ServiceComb社区 • 线上 • 关注ServiceComb微信小助手, 加入微信群与大家进行交流0 码力 | 20 页 | 4.00 MB | 1 年前3
共 23 条
- 1
- 2
- 3













