领域驱动设计&中台/微服务的容器化实践0 码力 | 19 页 | 1.86 MB | 1 年前3
微服务和Service Mesh 在多个行业落地实践阶段一:单体架构群,多个开发组,统一运维组 www.163yun.com 阶段二:组织服务化,架构SOA化,基础设施云化 www.163yun.com 阶段三:组织DevOps化,架构微服务化,基础设施容器化 www.163yun.com Hailo Amazon Netflix 来源: https://www.linkedin.com/pulse/astonishingly-unde 设计要点十:日志中心 www.163yun.com 设计要点十一:全链路监控 www.163yun.com 设计要点十二:全链路压测 www.163yun.com 微服务平台总览 容器平台 (多集群基础设施) Pod & Deployment 网络 Calico, OVS 存储 Ceph 滚动更新 弹性伸缩 日志中心 基础设施监控 开 发 集 群 降级 容错 路由 负载 均衡 参数 分流 拓扑 依赖 配置 中心 服务 监控 服务 告警 认证 鉴权 统计 概览 知识 库 APM (应用运行期监控) 运行时 拓扑 性能 监控 服务 筛选 调用 链 调用 栈 JVM 监控 数据库 监控 性能 告警 自定义 数据 服务 告警 监控 大屏 账户 审计 CICD0 码力 | 39 页 | 3.06 MB | 1 年前3
唯品会调度系统的前世今生代码较新,使用Quartz进行调度。提供 高可用和分布式功能 功能单一,只支持Java,不支持 Shell(PHP)和消息驱动的作业调度 对任务超时、任务执行情况、监控逻辑 支持粒度功能较单一或缺乏 没有容器化选型? 调度产品的定位 简易开发、简单维护 高可用、分片并发处理、资源调度动态平衡 支持Java、Shell以及本地模式(VIP还支持消息模式) 统一配置、统一监控、统一管理 VIP弹性调度系统 批量处理 强行终止 Dashboard … 为什么需要容器化 资源利用 提高物理资源的 利用率 系统弹性 资源弹性伸缩 运维效率 上线周期、峰值 应对 作业隔离 不同业务间作业 隔离 容器化的调度系统选型 开源程度 场景切合(秒级调度) 异构体系 管理成本 长驻处理? 使用后销毁? 物理资源层: Mesos / VM 容器/应用层: Marathon / K8S / Swarm Swarm 作业层(常驻): Saturn 多层调度理念 创建 容器 资源 查询 容器 资源 释放 容器 资源 域 作业 Executor 容器 Task/App Saturn DC/OS 1 * * 1 * 1 创建 创建 协调者 Binding 分片 1 * 镜像(程 序包) 1 * 作业实 现包 1 * 物理机 1 1 作业名0 码力 | 58 页 | 5.40 MB | 1 年前3
大规模分布式系统架构下调测能力构建之道而“MOCK”,是最 有效的手段。 分布式服务框架mock能力构建 应用 服务容器(Consumer) Filter Chain 将mock能力内置到分布式服务框架中 开发mock能力过滤器,在服务调用链路上对服务调用进行挡截。 “开关机制”控制mock能力启停 mock能力启用时,服务容器初始化期间将加载mock数据文件到内存中,每个服务请求将和mock数据的入参定 义进行比对,满足(静态匹配 服务容器(Provider) Consumer Consumer 服务实现 服务实现 Accepter Filter Chain Filter1 线上数据 抓取过滤器 FilterN 抓取配置: 是否开启 抓取时长 抓取数量 落 盘 … … 导出 Mock文件A Mock文件B Mock文件C 应用服务直连调测 服务容器(Provider) 调用者 服务容器 提供者A 提供者A 服务容器 服务注册中心 服务列表 …… 无需注册中心 不需要服务消费者注册,直接通过本地配置文件指定的IP地址来绕过“服务路由”及“负载均衡”机制。 服务提供者不能采用token验证模式 基于包名过滤服务 团队往往开发某类业务服务,这类服务一般都具有相同的包名,因此,可以通过配置包名和服务IP的映射关系, 让服务框架自动将一批服务和特定的IP关联到一起。 直连调测机制0 码力 | 19 页 | 2.74 MB | 1 年前3
海量用户推送后台系统架构实践-曾振波多维度监控,告警系统 极光推送后台系统架构 08 K8S部署业务 • 原有系统的运维工作繁杂,资源利用率低 • 弹性扩容 • 配置统一管理 • 内外集群隔离 • Pod包含多个容器 - 辅助容器,业务容器 • 业务模块代码架构调整 • 监控体系调整 极光推送后台系统架构 09 结束语 • 高性能/低成本、高可用、高运维 • 只用验证过的开源组件 • 自研替代开源 • 能并行就不要串行0 码力 | 23 页 | 1.26 MB | 1 年前3
领域驱动设计&中台/演进式架构的平台化落地微服务⼯工程创建 开发 框架 架构 ⻛风格 资源 配置 … 架构演进 服务 关系 分析 代码 质量量 分析 数据 库分 析 领域 模型 分析 运⾏行行资 源管理理 PaaS、 容器云资 源管理理 公共 部分 产品、⼈人 员维护 定义通⽤用 约束条件 定义服务 约束条件 可视化设计 服务地图 关联变更更到需求 设计API 导swagger ⽂文件 API清单 获得运⾏行行架构、实例例状态 ELK⽅方 案 对接资源室 获得组织结 构 对接175产品 定义管理理 Fitness Function执 ⾏行行引擎 集成Sonar Server 对接容器云 PaaS API变更更历史 部署架构变更更评审 定义 契约 契约变 更更评审 未评审 契约 提⽰示 已申请资源 登记 服务部署 脚本⽣生成 部署架构 推到⽬目标 运⾏行行(测 契约 应⽤用架构变更更 评审 关联变更更到需求 需求 查看需求 我的任务 对接外部 系统 前台 后台/⽀支持 为MVP包含的功能范围 服务地图 产品服务 ⽤用户 产品 容器器 云 PaaS ELK 监控 发布 平台 运维服务 服务实例例 资源池 运⾏行行架构 175 ⽤用户认证服务 鉴权 会话 微服务设计服务 微服务 服务地 图 API0 码力 | 42 页 | 2.95 MB | 1 年前3
领域驱动设计&中台/可视化的遗留系统微服务改造明确系统边界 ⼩小步改造系统 可视化的认识遗留留系统 C4模型、⽤用户画像、⽤用户旅程 C4模型系统架构可视化 国家级 省级 道路路级 市级 C4模型系统架构可视化 系统上 下⽂文图 容器器图 代码图 组件图 已可视化 ⽤用户画像和旅程系统功能⽤用户可视化 ⽤用户画像 ⽤用户旅程 已可视化 突出⽤用户信息,诉求和价值体现 还原业务场景 可视化的划分遗留留系统 领域驱动设计、事件⻛风暴暴⼯工作坊、服务画布 包/类之间的依赖⽣生 成可视化表格 Structure101代码依赖分析 具体依赖细节 Structure101代码依赖分析 可以将包/类进⾏行行 ⾃自由组合,形成 容器器,查看容器器 之间的依赖 服务A 服务B 具体依赖细节 已可视化 Structure101代码依赖分析 与Intellij或Eclipse相 结合,实时查看依赖, 指导拆解过程0 码力 | 54 页 | 3.85 MB | 1 年前3
降级预案在同程艺龙的工程实践-王俊翔JVM内存 JVM线程 GC数据 业务数据 SDK数据 ⾃自定义数据 系统数据采集 容器器数据 CPU数据 内存数据 磁盘数据 … ⽹网络数据 采集 Agen t ⽇日志中⼼心 KAFKA 数据处理理 通过本地⽇日志⽂文件,实时采集降级服务质量量数据 ⽇日志 ⽂文件 系统数据采集 容器器数据 CPU数据 内存数据 磁盘数据 … ⽹网络数据 采集 Agen t ⽇日志中⼼心0 码力 | 26 页 | 18.67 MB | 1 年前3
声明式自愈系统——高可用分布式系统的设计之道-王昕计算 100/x 的程序: x = 100 / x; TLA+的应用场景——验证系统设计的正确性 TLA+工具会遍历所有可能的状态验证系统的正确性 分布式系统中有哪些异常情况需要模拟? 运行时可能出现的异常 Applications Runtimes Middleware OS Virtualization Storage Networking Data 启动异常 进程被杀0 码力 | 44 页 | 2.47 MB | 1 年前3
分布式 KV 存储系统 Cellar 演进之路Cellar起源 • 中心节点架构演进 • 节点高可用和异地容灾 • 服务可用性提升 • Cellar规划 目录 系统研发 • 异地多活 • 跨机房自动容灾 • 磁盘粒度容灾 • 数据迁移优化 可运维性 • 容器化 • 自动扩缩容 Cellar规划 谢谢0 码力 | 34 页 | 1.66 MB | 1 年前3
共 11 条
- 1
- 2













