微服务和Service Mesh 在多个行业落地实践163yun.com 设计要点亓:数据库横向扩展 www.163yun.com 设计要点六:缓存的设计 APP缓存 CDN 接入层 静态资源 动态资源静态化 应用本地缓存 分布式缓存 数据库为中心 缓存为中心 www.163yun.com 设计要点七:消息队列与异步化 www.163yun.com OVS 存储 Ceph 滚动更新 弹性伸缩 日志中心 基础设施监控 开 发 集 群 测 试 集 群 生 产 集 群 API网关 (流量接入层) 路由 路由 插件 分流 流量 镜像 维护 开关 API 监控 认证 鉴权 治理 文档 报表 微服务框架 (服务治理) 服务 目录 注册 发现 限流 熔断 降级 容错 路由 负载 (流量接入层) 路由 路由 插件 分流 流量 镜像 维护 开关 API 监控 认证 鉴权 治理 文档 报表 线上 系统B 预发 环境 新上 线服 务 99% 1% 灰度发布 A/B测试 流量镜像 测试预发 新上服务 定时开关 接口文档统一维护 文档与运行时一致 减少调用沟通成本 可自行定制:路由插件,可开发插件拦截请求,进行定制化 API网关负责流量接入0 码力 | 39 页 | 3.06 MB | 1 年前3
大规模分布式系统架构下调测能力构建之道将mock能力内置到分布式服务框架中 开发mock能力过滤器,在服务调用链路上对服务调用进行挡截。 “开关机制”控制mock能力启停 mock能力启用时,服务容器初始化期间将加载mock数据文件到内存中,每个服务请求将和mock数据的入参定 义进行比对,满足(静态匹配 或动态匹配)规范的请求,直接用mock数据的出参定义作为服务调用的结果。 应用无感知 无需修改应用代码,单元测试代码中也无需添加任何的mock语句。 载 服务 调用 脚本引擎 Mock数据规范 格式规范: 1.静态匹配 2.动态匹配 3.多版本支持(服务版本) 管理规范: 1.服务谁提供,就由谁负责相应Mock数据的 制作。 2.mock数据可被使用者二次修改或替换。 3.mock数据独立工程管理。 静态匹配(json) 动态匹配(脚本) 在线抓取Mock数据 手工编写应用服务的mock数据往往工作量巨大,尤 不需要服务消费者注册,直接通过本地配置文件指定的IP地址来绕过“服务路由”及“负载均衡”机制。 服务提供者不能采用token验证模式 基于包名过滤服务 团队往往开发某类业务服务,这类服务一般都具有相同的包名,因此,可以通过配置包名和服务IP的映射关系, 让服务框架自动将一批服务和特定的IP关联到一起。 直连调测机制 提供者B 服务容器 提供者B 服务容器 本地配置文件 com.company0 码力 | 19 页 | 2.74 MB | 1 年前3
领域驱动设计&中台/演进式架构的平台化落地⽤用有深⼊入研究和丰富实践经验。 ⽬目前致⼒力力于帮助各⾏行行业客户实现数字化转型,建⽴立数 字时代的精益研发体系,提升规模化创新能⼒力力。近两 年年来,研究的重点放在数字化业务管理理的组织治理理与 动态投资组合管理理,最⼤大化投资成效。 2016年年翻译出版了了著作《精益企业》。 演进式架构 让架构可以快速跟上业务发展与技术⽣生 态变化,并保持稳定 变化 tech ecosystem ecosystem business ux everything changes all the time! 当事物在以不不可预期 的⽅方式持续改变时, 怎么可能进⾏行行有效的 预先计划? 动态平衡 evolvability accessibility reliability repeatability accountability extensibility reproducibility component component component component component component component component component 分层单例例架构 微内核与插件架构 std std std std std std 事件驱动架构 Broker Meditator 微服务架构 checkout module module database0 码力 | 42 页 | 2.95 MB | 1 年前3
苏宁易购小程序架构实践 苏宁 禹立彬主购物流程由于登录,支付,TAB原因,无法插件化 • 微信小程序间跳转策略的变化,使得无法集中在一个小程序上实现购 物流程,只能每个小程序都具备。 • 同步器中包含了最新的购物流程文件包——订单,购物车,商品详情 ,个人中心等 • 同步器同步代码,启动新小程序时,在购物主流程上的情况下,同步 生成标准项目。 代码同步器 新的垂直的小程序,使用同步器生成项 目脚手架。 微信小程序插件 • 面向活动玩法类 分包加载,主包原则只放购物主流程 • 尽量压缩业务代码,减少文件大小 • 控制基础库版本,减少对用户的影响 request,登录与302 request,登录与302 在网页状态下运行良好的登录机制,在小程 序下,无法兼容。 loginRequest组件 请求专用接口,并保存登录状态 同时禁止小程序接口中用302传递cookie 小程序Webview • Webview无法传递cookie0 码力 | 36 页 | 833.39 KB | 1 年前3
QCon北京2018-《美团配送系统架构演进实践》-阴永俊计算能力是智能调度的关键! • 外卖场景下的配送计算能力要求 快速起量,系统质量、研发效率问题凸显 规模化阶段:提升各类运营系统迭代效率 元数据 管理 表单 管理 样式 管理 规则 引擎 动态表单 流程平台 �������� ������ ������ lu�K����/��� g��K����� ���K��//���� tab_S� ������( �Kjh n�D��������� Eb_�Kd ������/��������� ���g��luveHU�A ��� ������M� Lmjh ���K�� �s�c • 打造运营系统集成统一解决方案 • 例:流程平台 + 动态表单 流程大盘提升业务流程效率与结果 快速起量,系统质量、研发效率问题凸显 美团配送业务介绍 01 Agenda 02 MVP阶段 03 规模化阶段 04 精细化阶段 产品技术创新驱动业务发展 精细化阶段 美团配送 AI整体布局 Spatial-Temporal Data Mining 、Operations Research 、Machine Learning 智能调度 预测预估 定价机制 轨迹挖掘 智能规划 智能硬件 时间 预估 单量 预估 POI 定位 骑行 导航 供需 平衡 弹性 研究 配送 范围 站点 规划 订单 指派 路径 规划 语音 助手 配送 硬件0 码力 | 31 页 | 15.26 MB | 1 年前3
降级预案在同程艺龙的工程实践-王俊翔实时策略略推送 数据采集 应⽤用管理理 策略略管理理 流控管理理 预案管理理 指标管理理 监控告警 数据⼤大盘 脚本开发 ETCD管理理 故障演练 业务保障管理理后台 应⽤用JVM进程 故障动态注⼊入 Attach 故障注⼊入 指标聚合查询 熔断降级计算(Flink) ⽇日志中⼼心 KAFKA 数据采集、计算、存储 指标(HBase) 指标明细(ES) 降级⽇日志(ES) ETL center mysql sharding watch admin • 使⽤用ETCD实现注册中⼼心 • 简单 - Go语⾔言编写部署维护简单,定义良好的API • 安全 - SSL认证机制 • 快速 - ⽀支持上万次写⼊入操作 • 可信 - Raft算法保证强⼀一致性,Proxy反向代理理模式⽀支持 • 服务数据存储 • 应⽤用、服务元数据、状态数据,etcd、mysql双份存储 多种策略略⽅方案:失效备援、服务熔断、资源隔 离、延迟处理理 • 策略略灵活调整,实时监控策略略运⾏行行状态 应⽤用 / 服务 降级代码管理理 • 线上代码开发、测试、发布 • 降级代码统⼀一管理理 • 脚本代码动态编译,对象管理理 业务保障平台应 SDK 线下开发 策略略配置 测试 发布 WEB IDE 线上开发 降级⽅方法使⽤用 Git 降级代码 线下代码管理理 脚本 降级服务如何⾃自动探测恢复0 码力 | 26 页 | 18.67 MB | 1 年前3
QCon北京2018-业务高速发展下的互联网金融系统架构演变-张现双+接口签名 加解密 防刷 攻击类 接口缓存 接口重写 热点活动支持 热点功能前置 接口版本控制 业务前置控制 Ng+ LUA 流量调度 降级 限流 灰度 接口分发 运营活动动态配置,接口重新编排 热点功能前置,网关分发许可限流,保护底层 接口req/resp重写,透明操作 全功能API配置,热加载 方案: nginx、 istio 服务A 服务B 1 2 移动服务 接入层 v2 v3 v1 重要原则 幂等、接口可重入 接口规范化(命名、类型、长度等) 分布式事务,补偿、撤销机制 接口缓存,热数据尽可能前置 DB跟随服务 代码、逻辑、结构等都要适时重构 最终架构[简版] 移动后台打散,界限趋于不明显 极大消除冗余,三级两层划分0 码力 | 42 页 | 19.96 MB | 1 年前3
全球架构师峰会深圳2015/研发体系构建_龚银_中型创业公司的技术管理之痛聚焦,聚焦,集中火力开火 业务优先,区分核心业务,重要性四象限 业务先行,基础建设适当的平衡和取舍,一步一步来 重视规划和系统思维的作用,根据现状随时调整轻重缓急 充分的沟通机制和反馈机制,让大家都能有一致的理解 聚焦与系统思维 技术和管理比重随时调整和平衡 技术、业务和管理的平衡 技术管理者大多对技术热衷,对管理忽视 技术、业务、系统花费精力和时间太多,团队管理精力太少 观念和思维的碰撞,不同文化不同背景快速聚集带来的必然摩擦 不就是这里改一下么,不就是流程调整一下么? 沟通、沟通、沟通、无他 不同的对象,沟通方式不一样,灵活处理,使用不同的技巧 沟通只是第一步,形成固定机制,落实并执行才最重要 Motivation 正确的激励导向,使团队快乐 需要的素质和「心得」 需要的素质 指得了路 扛得了枪 吃得了苦 卖得了萌0 码力 | 36 页 | 2.49 MB | 1 年前3
领域驱动设计&中台/化繁为简--DDD驱动复杂业务软件架构的演进外部接口深入到上游的业务逻辑 限界上下文解耦-发布订阅机制 钢筋模型 上下文 建模模型 上下文 调度中心 平法模型 上下文 发布 解决: 上游模型变化,下游模型联动 发布-订阅机制 架构演进 1 2 3 领域拆分 架构分层 构建领域模型 架构分层 持久化层 领域层 CAD图纸管理 建模UI 通用UI组件 几何算法 通用框架机制 通用算法 CAD/BIM UI0 码力 | 33 页 | 1.25 MB | 1 年前3
领域驱动设计&中台/用状态机封装领域逻辑学校里经常教的 编译原理 电子设计自动化 通信协议 …… 作用 三个不同的图 图形 视角 映射到实现 类图 全局、静态 类的签名 序列图 局部(用例)、动态 类之间的协作 状态机图 类、动态 所有的逻辑 测试 答对问题有奖金 金额从2.56元到20.48元 请扫我微信以便当场转账 加微信时烦告知尊姓大名 作用 逻辑内移 都以为自己在做正常的事情, 系统却出问题了0 码力 | 30 页 | 1.75 MB | 1 年前3
共 20 条
- 1
- 2













