微服务架构实践-唯品会XML������dubbo���Spring Cloud�� � 14 ���� N 服务通p协议OH552、5C2、U(2等P N 数据f输方式O同步、异步P N 数据序列化OJ41N序列化、2B序列化等P 15 ����/�� Registry! Client! Service! ��/�� ��/���� �� • Service��������� R 监控大盘快速展现系统问题 ü 秒级实时告警第一时间报告 criIicaB iHHJeH ü 分钟级y实时告警周期性检测指标规 则 ü a告警事d快速定h根源问题 ü 灵活方n的多级告警策略定义 ü 2igeEDW央告警平台无缝集成 指标统计 调用链跟踪 ü 域Q主机Q服务A2I级别指标展示 ü 每秒请求数 ü 响应时间 ü 请求失败率(4LL/5LL/EHF0 码力 | 120 页 | 82.16 MB | 1 年前3
消费者云CSE微服务实践微服务框架技术选型-支持多语言 尽管现在以Java和GO语言为主,但是从架构演进角度考虑,未来 会根据消费者业务自身的特点引入更适合的语言 服务框架丌要绑定具体的语言实现,例如内部通信协议使用某种 语言特定的序列化机制、发布泛型、抽象接口等 微服务框架技术选型-灵活和轻量级架构 当前业务服务端都是非Web应用,所以丌需要运行在Web容器中, 需要类似Main函数可以直接拉起来的Standalone模式 丌是所有业务都有苛刻的性能需求,丌同业务对性能的诉求丌同, 可以按需选择协议和传输方式,服务不传输协议、序列化方式解耦 微服务框架技术选型-成熟 微服务框架采用的技术应该是经过验证、业界主流的技术,例如网 络传输采用Netty 微服务框架本身要成熟,经过丌同业务、较长时间的验证,商用发 布的特性要稳定 无论是社区开源版本,还是购买的商用软件,戒者自己构建,技术 支持和保障一定要到位0 码力 | 22 页 | 1.39 MB | 1 年前3
华为微服务框架ServiceCombBuilding Microservice NO.1 深圳站: Cloud Native 架构下的 K8S 和微服务实践 ServiceComb Chassis架构 通信模型 序列化 传输协议 编程模型 Spring MVC POJO JAXR 服务契约 OpenAPI 服务发现 熔断 负载均衡 配置 通过调用链支持自定义追踪扩展 2018 Building Microservice NO.1 深圳站: Cloud Native 架构下的 K8S 和微服务实践 Metrics • 覆盖关键指标 • 支持多时间周期性能指标统计 • 集成Prometheus,OverWatch • 提供health check 接口检查 Metrics 子项 说明 微服务资源使用 CPU、ThreadCount、Heap、NonHeap0 码力 | 28 页 | 1.53 MB | 1 年前3
微服务的设计原则与⽣态系统 - 王磊(OpenAPI) 通信模型 (序列列化、传输协 议) 编程模型 (同步、异步、 Reactive…) 服务发现 熔断 负载均衡 配置 跟踪 … 运⾏行行模型 编程模型 - 使⽤用OpenAPI的⽅方式定义契约 运⾏行行模型 - 服务发现/熔断/负载均衡/跟踪 通信模型 - ⾼高效的序列列化机制/传输协议 华为ServiceComb0 码力 | 62 页 | 6.65 MB | 1 年前3
ServiceComb介绍事务最终⼀一致性 https://github.com/apache?q=incubator-servicecomb ServiceComb Java Chassis的架构图 通信模型 (序列列化、 传输协议) 编程模型 (Spring MVC JAXRS, POJO…) 服务契约 (OpenAPI) 服务发现 熔断 负载均衡 配置0 码力 | 16 页 | 877.58 KB | 1 年前3
ServiceComb 的前世今生•支持pull/push两种模式监控实例变化 • 实例动态扩容,海量的长连接或者短连接 • 支持灰度发布、服务分组等高级管理特性 微服务 ServiceComb 开发框架 通信模型 (序列化、传输协 议) 编程模型 (同步、异步、 Reactive…) 服务契约 (OpenAPI) 服务发现 熔断 负载均衡 配置0 码力 | 16 页 | 1.45 MB | 1 年前3
ServiceComb雄关漫道保证事务最终一致性 https://github.com/apache?q=incubator-servicecomb ServiceComb Java Chassis的架构图 通信模型 (序列化、 传输协议) 编程模型 (Spring MVC JAXRS, POJO…) 服务契约 (OpenAPI) 服务发现 熔断 负载均衡 配置 跟踪 … 运行模型 围绕服务契约进行开发以及运维0 码力 | 20 页 | 4.00 MB | 1 年前3
张波-虎牙直播在微服务改造中的实践Service Mesh Meetup #6 广州站 微服务改造事项 DNS-F在数据 库场景的落地 名字服务在负 载均衡场景的 落地 DNS-F在微服 务场景的落地 应用层探活 数据库故障 恢复时间长 服务故障牵 引慢,流量 接入生效时 间长 DNS生效慢 内部服务无 就近接入能 力 服务性能下 降流量不摘 除 实 例 切 换 能 力 秒 级 流 量 牵 引 能 力 D N S 华南IDC 华中IDC 华北IDC Nginx Nginx Nginx Web server 专线 背景 负载均衡变更需要更新配置发布后 才能生效,节点扩缩容,屏蔽操作 需要人工参与,流量接入接出时间 长 目标 流量接入接出时长低于30秒 负载均衡配置下发无状态改造 虎牙负载均衡部署的机器数百,配置下发的可靠性保障,一致性保障要求特别严格, 如果出现配置下发不及时,或下发配置失败,极大可能出现故障,同时负载均衡服 客户端主动监听配置更新,配置秒 级生效,新扩容服务主动拉取全量 配置,流量接入时长缩短3分钟+ 配置名字服务 配置IP方式 服务端下发文件更新配置,更新配 置生效时间长,由于需要预先知道 负责均衡集群的机器信息,扩缩容 需要等元信息同步以后才能接入流 量,扩容流量接入时间长 负载均衡节点对接名字服务 虎牙负载均衡部署的机器一台机器上可能存在数百的配置,每次节点生效需要重新 reload配置,且节点新增或删除需人0 码力 | 27 页 | 1.03 MB | 1 年前3
ServiceComb在华为消费者云的亿级用户微服务实践ait),傻等期 间,无法处理其它业务消息。 2、纠结的超时时间:服务的超时时间配置是个比较纠结的事 情,如果超时时间配置过大,如果响应慢,会导致线程被长时 间挂住;如果配置过小,则会导致超时增多,成功率降低。 3、雪崩效应:假如超时时间配置较大(例如3S),服务端响 应的平均时延达到了超时时间阈值,会导致业务线程长时间处 于wait状态,工作效率降低,业务堆积,发生级联的雪崩效应。 和参数依赖,可以通过异步微服务调用并行执行 异步场景2:性能提升:使用更少的线程处理更多的消息,提升线程和I/O利用效率 异步场景3:业务超时较长:业务上对服务调用时延不敏感(例如1-3S),如果采用同步调用 + 大超时时间,在业务高峰期,如果 时延达到超时阈值,系统很容易被压挂 异步场景4:级联调用:需要级联调用多个微服务,希望提升可靠性,不会因为某个微服务处理慢而导致其它微服务调用被阻塞 传统I/O和业务线程分离技术:0 码力 | 15 页 | 1.15 MB | 1 年前3
微服务架构与领域驱动设计 - 王磊Tacking Complexity in the heart of software �9 微服务架构与领域驱动设计? �10 • 能有效⽀支撑演进式架构 微服务架构与领域驱动设计 �11 随着时间的推移,采⽤用领域驱动设计⽐比采⽤用 以数据中⼼心设计的软件复杂度要低得多。 《Pattern of EEA》 • 能有效降低复杂软件的维护成本 微服务架构与领域驱动设计 �12 微服务架构与领域驱动设计 • 业务流程中发⽣生的事件 • ⽤用“已发⽣生”时态描述 • 有时间顺序 业务流梳理理 寻找事件 寻找命令 寻找聚合 划分⼦子域&界限上下⽂文 统⼀一语⾔言 ① ② ③ ④ ⑤ ⑥ 参与过程: • 根据对业务的理理解,将领域事件写在橙⾊色贴上,每个即时贴代表⼀一个事件 • 事件按照从左到右按时间顺序排列列,不不同参与者的事件需保证相对顺序 • 事件采⽤用⽤用“xx已xx”的格式,如“订单已创建” 事件采⽤用⽤用“xx已xx”的格式,如“订单已创建” 什什么是(领域)事件? • 任何的业务都会以数据的形式留留下⾜足迹。我们对于数据的追溯可以通过对 事件的追溯来完成。当把这些事件按照时间顺序排列列起来,⼏几乎可以清晰 的推测出在过往的⼀一段时间内到底发⽣生了了深数据变化。 寻找命令 参与过程: • 将命令写在蓝⾊色即时贴上 • 将命令贴在所产⽣生的事件旁边 • 有的命令可能产⽣生多个事件 • 识别出触发命令的外部系统和⻆角⾊色0 码力 | 28 页 | 1.84 MB | 1 年前3
共 25 条
- 1
- 2
- 3













