大规模分布式系统架构下调测能力构建之道
大规模分布式系统架构下调测能力构建之道 李鑫 大纲 分布式环境下开发的调测效率问题 应对之道 远程应用服务 契约测试 分布式消息服务 分布式缓存 分布式服务的“租户”隔离策略 总体调测框架实践 分布式环境下调测方法论 单体应用 服务化 微服务 小中型规模应用+小型团队 中大型规模应用+多团队协同 Cache DB NFS Load Balancer 我负责的功能依赖一堆的远程服务,为了本地调测,我必须从 头到尾梳理代码,再写一堆的mock语句把他们全mock掉了。 每当业务逻辑变化了,代码中要增减相应的mock语句;每当依 赖服务上线后,要把测试用例中对应的mock语句去掉。对测试 用例的修改工作贯穿于整个开发工作之中。 3. 我和某同事通过服务框架进行调用联调,结果另一同事也把同 名服务挂了上来,不幸的是,他的服务版本和我们的不一样, 结果,一系列的灵异状况发生了… 据文件到内存中,每个服务请求将和mock数据的入参定 义进行比对,满足(静态匹配 或动态匹配)规范的请求,直接用mock数据的出参定义作为服务调用的结果。 应用无感知 无需修改应用代码,单元测试代码中也无需添加任何的mock语句。 服务 调用 Invoker … Remote Call 负载均衡 策略 Runtime Mock数据文件 远程服务 Mock配置 开关/策略…0 码力 | 19 页 | 2.74 MB | 1 年前3从百度文件系统看大型分布式系统设计中的定式与创新
• … 数据与计算的分片 • 哈希分片 - 简单、均衡 - 扩容复杂、易用性差 - 一致性哈希、虚拟节点 • 按范围、数据量分 - 使用简单 - 需要管理元数据 - 中心化与去中心化 元数据管理 • 去中心化 - P2P技术 - 潜在的一致性问题 - 能管理的元数据有限 • 中心化 - 设计实现简单 - Master节点易成为瓶颈 中心化的解决方案 • Master-Slave模型0 码力 | 24 页 | 937.45 KB | 1 年前3微服务和Service Mesh 在多个行业落地实践
(开发流程管理) 代 码 检 出 代 码 编 译 镜 像 构 建 集 成 测 试 自 动 部 署 流水线管理 测试平台 (集成,场景测试) 单接口 用例 场景 用例 执行 集 定时 执行 接口 Mock 覆盖 率 生产镜像仓库 测试镜像 仓库 历史 管理 批量 导入 接口 监控 www.163yun.com 多样需求 持续集成 服务管理 www.163yun.com 开发集群 测试集群 CICD (开发流程管理) 流水线管理 代码 检出 代码 编译 镜像 构建 集成 测试 部署 测试平台 (集成,场景测试) 单接口 用例 场景 用例 执行 集 定时 执行 接口 Mock 覆盖 率 生产镜像 仓库 测试镜像 仓库 历史 管理 批量 导入 接口 接口 监控 生产集群 镜像 同步 镜像拉取 自 动 部 署 手 动 触 发 代码到线上全流程管理 互联网化接口测试,场景测试 灵活执行集:冒烟,日常,回归 定时测试,MOCK测试 测试,生产镜像仓库分离,自 动同步 开发测试环境自动部署,生产 环境手动触发 持续集成 www.163yun.com 微服务框架 (服务治理) 服务 目录 注册0 码力 | 39 页 | 3.06 MB | 1 年前3领域驱动设计&中台/演进式架构的平台化落地
compatible) Production 微服务研发平台落地 落地优秀实践,守护架构,降低微服务 研发学习成本 企业研发⼯工具链⽣生态 敏敏捷协作平台 部署发布 平台 持续交付流⽔水线平台 ⾃自动测试 平台 微服务系统设计,研发与运维管理理 微服务 /API设 计 代码 ⽣生成 契约 服务 架构 演进 微服务 运维治 理理 部署架 构 设计 统⼀一协作平台 研发⼯工具连 约束条件 可视化设计 服务地图 关联变更更到需求 设计API 导swagger ⽂文件 API清单 设计变更更与 需求关联 服务地图变 更更历史 ⽣生产环境 部署架构设计 测试环境 部署架构设计 绘制部署架构,组合服务和 部署元素 部署架构变更更历史 推荐部署架构(远期规划) 微服务开发框架定制 代码架构⻛风格选择 资源配置 数据库版本管理理 是否⾃自动⽣生成API/ 到GIT 仓库 架构分析- 从契约反向识别实现与模型差异 架构分析- 架构Fitness Function检查 代码质量量分析- 配置Sonar地址、展⽰示分析结果 数据结构分析- 测试环境的反向⼯工程可视化 数据结构分析- ⽣生产环境脚本导入可视化 领域模型- 基于代码守护的反向可视化 运⾏行行时部署架构可 视化 数据库 状态/版本显⽰示 创建系统 组建团队0 码力 | 42 页 | 2.95 MB | 1 年前3领域驱动设计&中台/用状态机封装领域逻辑
Subdomain?主题图。 测试 答对问题有奖金 金额从2.56元到20.48元 请扫我微信以便当场转账 加微信时烦告知尊姓大名 作用 学校里经常教的 编译原理 电子设计自动化 通信协议 …… 作用 三个不同的图 图形 视角 映射到实现 类图 全局、静态 类的签名 序列图 局部(用例)、动态 类之间的协作 状态机图 类、动态 所有的逻辑 测试 答对问题有奖金 对象掉入集合时,缺省掉入哪 个子集合 历史:记住离开时的子状态 状态 并发状态 不同分区的状态并存 从不同维度 分割属性值组合 高富帅 矮穷丑 高穷丑 矮富帅 测试 答对问题有奖金 金额从2.56元到20.48元 请扫我微信以便当场转账 加微信时烦告知尊姓大名 状态 入口动作和出口动作 entry:进入时必须执行 exit:离开时必须执行 逻辑进一步内收 迁移的结构和执行顺序 1. 当前状态是否能接受事件 2. 警戒条件 如果为真 3. Exit:先子后父 4. Action和Message 5. 改变状态 6 . Entry:先父后子 测试 答对问题有奖金 金额从2.56元到20.48元 请扫我微信以便当场转账 加微信时烦告知尊姓大名 建模 哪些类值得画状态机 全方位建模的可能性和必要性 核心类 状态多0 码力 | 30 页 | 1.75 MB | 1 年前3降级预案在同程艺龙的工程实践-王俊翔
Netflix开源的一款容错框架,支持多种降级熔断技术 资源隔离 断路路器器 降级操作 请求合并 请求缓存 实践过程中遇到的问题 • 业务改造成本⾼高,代码耦合,维护成本增⾼高 • 固化策略略,需线下修改代码,测试,发布,线上应急策略略响应不不 友好 • ⽆无法⽀支撑多系统的复合指标计算,业务降级⽀支持不不友好 • ⼤大量量应⽤用各⾃自实现降级熔断,代码散落在各应⽤用,没有统⼀一的管 理理和治理理。久 源隔 离、延迟处理理 • 策略略灵活调整,实时监控策略略运⾏行行状态 应⽤用 / 服务 降级代码管理理 • 线上代码开发、测试、发布 • 降级代码统⼀一管理理 • 脚本代码动态编译,对象管理理 业务保障平台应 SDK 线下开发 策略略配置 测试 发布 WEB IDE 线上开发 降级⽅方法使⽤用 Git 降级代码 线下代码管理理 脚本 降级服务如何⾃自动探测恢复 根据链路路关系、同等级优先级进⾏行行预案编排, 形成降级执⾏行行链路路 • 线上实时预案测试、演练,演练数据回溯 业务不不断迭代,持续引⼊入新依赖,系统是否稳定可靠? 预案是否依然持续有效? 如何才能持续保障系统的⾼高可⽤用性? 故障演练 • 对预案进⾏行行有效性、合理理性验证 • 通过破坏性测试,发现系统的潜在故障,及时修正,并做好降级预防措施 • 参数修正,及时调整流控、降级策略略,优化告警、超时参数设置0 码力 | 26 页 | 18.67 MB | 1 年前3刘道平-从0到1,移动政务应用小程序系统架构演化
2、政务云互联网区:静态资源、网关 3、互联网区:小程序、云服务 二、安全防护 1、仅开放指定端口 80 443 2、域名须有HTTPS证书 3、白名单 13、安全渗透测试、运维监控 -- 确保系统稳定 一、业务应用上线前必须经过安全渗透测试。 1、在测试环境中扫描出:越权查询、SQL注入、明文传输等,要求整改 2、正式环境检查: 操作系统、数据库、中间件漏洞,建议打补丁 二、运维监控每日 1.采用ELK收集系统日志、监控异常信息 中心 电子 证照 服务 办理 服务 查询 移动政务 应用平台 小程序 端 APP端 运营数 据分析 一体机 端 1.项目建设,考虑的维度有:需求-产品-前后端开发-测试-上线… 2.产品研发,需考虑的维度:产品可扩展,如多端支持(小程序端、APP端、一体机端); 功能可扩展,如支持个人中心、证照、办事、资讯、特色专区等;可移植、易安装等; 及衍生的支撑工具系统,如运营数据分析;0 码力 | 35 页 | 15.60 MB | 1 年前3全球架构师峰会2019北京/量子计算/量子计算及其潜在应用&mdash
备,有效参数约减,线路优化,并行梯度计算等) 6.支持 GUI 界面友好编程体验 华为量子化学软件包 HIQ Fermion 1:多参数约减算法,可约减高达80% 2: 多参数梯度优化算法, 测试300+参数 3: 量子线路压缩高达70% 累计提速 超过1600倍! Ansatzes Ops Drivers Transforms Optimizers Utils GUI HiQ Fermion 和测量,用经典计算机处理能量及参数优化更新。 量子部分 经典部分 华为 HiQ Fermion: 部分关键功能测试数据 提供不同优化器作对比 支持量子化学主流的费米子编码方法 Bravyi-Kitaev Transform 华为 HiQ Fermion: 部分关键功能测试数据 具备刻画分子势能面的能力 支持多种Hardware Efficient Ansatz CNOT Single0 码力 | 34 页 | 5.57 MB | 1 年前3ServiceComb 开源微服务框架技术演进之路 巨震
ServiceComb 服务注册中心 公众号 WebUI App Gateway ServiceComb SDK Mesher (华为商用及开源ServiceMesh方案) 业务面 性能测试 0 2000 4000 6000 8000 10000 12000 14000 QPS QPS 原生应用 Go SDK Sidecar Istio(no mixer) Istio org/ • ServiceComb混合部署示例项目 https://github.com/go-mesh/mesher-examples • Mesher性能测试 https://github.com/go-mesh/mesher-tools/tree/master/perf https://github.com/apache?q=ServiceComb0 码力 | 20 页 | 861.58 KB | 1 年前3联想-贺钢架构工作在国际化项目中的应用实例
2014-02-19 … 3 … 1 Show.ppt 138238 2014-08-09 … 碰到的问题 • 各类文档,程序的属性差别很大 • 采用的敏捷Scrum,任务随Sprint迭代 • 开发测试人员属于不同地域的不同部门,向不同的人汇报 后来使用的方案 ID ... Type … Content 1 … 1 {“File Name”:”1.doc”,”time”:”2014-02- 对架构设计的影响V -- 安全要求对架构的影响 • 软件安全趋势 • 针对国际化公司的安全威胁 LSDL 安全设计 安全设计 服务器安全 -- Penetration Testing(渗透测试) • Step 1: Reconnaissance • Step 2: Scanning • Step 3: Exploitation • Step 4: Keeping0 码力 | 53 页 | 2.36 MB | 1 年前3
共 19 条
- 1
- 2