联想-贺钢架构工作在国际化项目中的应用实例架构工作在国际化项目中 的应用实例 贺钢 2016-12-17 个人简介 • 深信服科技 • 腾讯 • 联想深圳中国开发实验室 前言 • 国际化项目的一些不同点导致架构工作的一些不同 • 应用实例体现这些不同点 广告 • 联想电脑管家(PC): guanjia.lenovo.com.cn 国际化项目的一些不同点 • 目标客户不同: 文化习俗, 客户需求, 用户体验… title”:”meeting notes”,”Sent time”:”2014-01-08”,”Sent to”:”Herman, Jack, Tom”} 对架构设计的影响III – 非技术性的相关工作 • 沟通 通常项目的组织形式 国际化项目开发阶段 沟通个人经验 • 用于沟通的时间 > 50% • 承认对方和自己一样聪明 对架构设计的影响IV – 登录设计 • 功能: 用户名密码登录 端到端的安全设计III 端到端的安全设计IV 端到端的安全设计 • 只Admin可以写(避免提升权限) • 验证配置文件(如xml)的签名 • 专业工具扫描 总结 • 国际化项目的特点导致架构工作的不同 • 一些应用实例 一句话分享 • 不要用战术上的勤奋来弥补战略上的懒惰0 码力 | 53 页 | 2.36 MB | 1 年前3
QCon北京2018-《美团配送系统架构演进实践》-阴永俊美团配送系统:机器与海量骑手协作,服务于全国商家与用户 履约能力 实现平台对运单调度的实时把控,对运单与运力的供需匹配 运营效率 加强对配送骑手的管控能力 提升配送全业务的运营效率,降低成本 履约流程:下单 -> 派单 -> 接单 -> 取货 -> 送达… 业务团队:招聘、采购、物料、培训、薪酬、保险.... 运营团队:运力结构、经营分析、绩效考核.... 客服团队:问题跟进、定责… 基础设施不断升级 长期造壁垒,实现降维打击能力 从支撑业务到驱动业务 美团配送业务介绍 01 Agenda 02 MVP阶段 03 规模化阶段 04 精细化阶段 MVP阶段 业务从零到一 快速迭代、业务试错 核心链路MVP、主流程跑通 • 按照粗领域拆分系统边界 • 按照三大信息流(人、财、物)划分系统 • 如何支撑快速试错: • 项目制; PM、RD = QA; 区分履约服务与运营服务 骑手APP 管理端 DB 骑手运营 (人) 任务 活动 等级 结算平台 (钱) 清算 结算 对账 接单网关 标准API 容灾 容灾 API管理 标准API APP运维 多链路 安全框架 管理工作台 HRM 移动办公 招募 IM 物料 薪资 培训 成长 快速起量,系统质量、研发效率问题凸显 合同 骑手网关 规模化阶段:核心领域细分 主数据平台 (核心模型) 账号权限0 码力 | 31 页 | 15.26 MB | 1 年前3
大规模分布式系统架构下调测能力构建之道头到尾梳理代码,再写一堆的mock语句把他们全mock掉了。 每当业务逻辑变化了,代码中要增减相应的mock语句;每当依 赖服务上线后,要把测试用例中对应的mock语句去掉。对测试 用例的修改工作贯穿于整个开发工作之中。 3. 我和某同事通过服务框架进行调用联调,结果另一同事也把同 名服务挂了上来,不幸的是,他的服务版本和我们的不一样, 结果,一系列的灵异状况发生了… 4. 依赖的远程服务逻辑发生变化了,但负责它的团队没有通知到 动态匹配(脚本) 在线抓取Mock数据 手工编写应用服务的mock数据往往工作量巨大,尤其是对一些数据驱动的业务,比如电信营业厅的套餐开户、基金业 务中的基金购买等,手工制作这些mock数据费时费力。通过对线上(一般是测试环境)实际服务调用的真实数据的抓 取来制作mock数据能非常有效的降低Mock数据制作的工作量,同时还能提升Mock数据的质量。 1.定制现网数据抓取过滤器 2.定制抓取时间段 通过mock手段可以解决外部不可控因素对本地调测的影响,如果真实的外 部服务改变了,我们的mock数据也要随之改变,但 问题是: 我们如何及时感知到服务接口/逻辑发生变化了? 解决方法:契约测试 通过将契约测试集成到CI流程中,在构建的过程中完成接口的联调测试,和 接口变动的验证测试,从而实现对接口变动的及时感知。 Consumer 报告 Provider Consumer 报告 Provider request0 码力 | 19 页 | 2.74 MB | 1 年前3
刘道平-从0到1,移动政务应用小程序系统架构演化从0到1,移动政务服务小程序系统架构演化 Dolphin 刘道平 数字广东/粤省事产品中心 系统架构师 Dolphin 刘道平 • 毕业于华南理工大学 软件工程硕士 • 2001年开始从事软件研发工作,参与过税务、电信、银行、 基金、海关等多个行业大型业务系统的研发 • 有高级程序员、PMP、ScrumMaster证书 • TGO广州会员 简介 一、移动政务应用服务现状与痛点 二、一个特殊的移动政务应用项目 无大小限制,调转较难 智能化服务能力 微信自带组件,对接更容易 需根据场景单独对接,如人脸识别、支付等 产品自主性 需依托微信平台 完全自主可控 数据安全性 微信前端数据通过HTTPS传输 全业务流程数据传输监控 使用路径 微信端二级应用 一级入口 从技术的角度来比对,小程序和APP各具优势:小程序具备轻量级、跨平台、成本低、功能强和易传播的特征; 而APP则在产品自主可控、数据全程管控、 目的开发管理, 均使用TAPD( www.tapd.cn) 2.使用功能包括:需求管理、文档管理、缺陷管理、Wiki、Gitlab源码、企业微信集成等 3.配置了自定义的发布流程,每次版本发布都走TAPD的发布评审流程 22、对小程序技术架构演进的思考 1、小程序将无处不在,手机、车载、PC、带屏设备 2、小程序、APP、公众号的无缝集成 3、弱中心化、到强中心化 4、开放的更多公共能力、云能力、AI能力0 码力 | 35 页 | 15.60 MB | 1 年前3
苏宁易购小程序架构实践 苏宁 禹立彬程,活动玩法,辅助页面三类 复用购物流程———同步器 • 主购物流程由于登录,支付,TAB原因,无法插件化 • 微信小程序间跳转策略的变化,使得无法集中在一个小程序上实现购 物流程,只能每个小程序都具备。 • 同步器中包含了最新的购物流程文件包——订单,购物车,商品详情 ,个人中心等 • 同步器同步代码,启动新小程序时,在购物主流程上的情况下,同步 生成标准项目。 代码同步器 微信官方提供 • 降级到Webview 百度小程序转换器 • 基于百度官方的wx2swan • 将同等逻辑的微信小程序页面转换为百度 • 无法精确匹配每一个组件 • 少量修改,减少工作量 易购系APP转换器 • 将小程序代码转换为基于ReactNative框架的易购版小程序 • 降低易购APP大小 • 减少开发成本 • 使用ReactNative同步实现微信小程 运营埋点 • PV UV • 访问链路 • 转化率 3 小程序业务组件 CONTENTS • 使用原生的方式开发,没有使用wepy等框架 • 分包加载,主包原则只放购物主流程 • 尽量压缩业务代码,减少文件大小 • 控制基础库版本,减少对用户的影响 request,登录与302 request,登录与302 在网页状态下运行良好的登录机制,在小程 序下,无法兼容。0 码力 | 36 页 | 833.39 KB | 1 年前3
QCon北京2018-业务高速发展下的互联网金融系统架构演变-张现双+张现双,宜人贷研发架构师,移动后台负责人,负责 移动后台的技术研发和系统架构设计,并随着业务增长持续 不断的进行性能优化和系统架构升级。 从事过研发、运维、dba等工作,在应对互联网系统流 量、并发、安全、一致性问题等方面有一些经验。 翻译出版专著:《可伸缩架构:面向增长应用的高可用》 大纲� 01 宜人贷发展历程 02 移动后台架构演进 AND/IOS/H5/Open 静态站 网贷服务 借款流程 Cache集群 安全加密 网贷服务 CDN 支付结算 订单 DB从 批 处 理 系 统 活动 DB主 DB从 版本管理 产品 ... 同步 …... 网站、基础服务 移动后台 业务和团队规模迅速扩张 粗粒度服务化,基础设施完善 CDN/页面缓存/静态站/缓存集群 移动后台旁路 流程double,冗余开始出现 移动后台单体 服务B 移动服务C 接入层/GW 服务A 2 1 移动服务C 接入层 服务A 1 2 措施:优化链路[合并.重组.丢弃] before� after 收益: 优化组合流程8条,效率提升 单点得到弱化 丢弃僵尸接口36个(版本覆盖率) 挑战: 接口管理带来挑战 链路追踪趋于复杂 "� "� 丢弃 移动服务�C�0 码力 | 42 页 | 19.96 MB | 1 年前3
陈辉-架构师的业务思维理解清楚当前需求 具有业务前瞻性 不要过度设计 怎么运用?CASE I 流量承接 主播互动 商场促销活动 玩法承接 不断的优化和迭代 试错远远大于成功 新需求频繁 组件化 规则配置化 流程编排 玩法天生就是一个不断试错的业务 组件化+数据监控+业务复盘 数据跟踪和定量跟踪 跳出技术思维 需要的快速试错并拿到结果的能力 理解清楚当前需求 具有业务前瞻性 不要过度设计 怎么运用?CASE 多渠道 多平台 多用户 模块化 SPI 规则引擎 流程引擎 商品平台化 交易平台化 促销平台化 渠道下单 无结构化商品 多平台玩法 多端适配和开发组件 组件池 怎么去实践 走到业务一线去 找对评判标准-比如客户价值 权衡技术和业务 看远一点,做实际点 再来个case 样衣管理系统 产品 架构师 运营 架构师的工作职责 打造一个稍稍跑在业务前面的架构 架构先行 补充一点~0 码力 | 32 页 | 3.18 MB | 1 年前3
高可用分布式流数据存储设计-李玥负责主导设计新⼀一代京东消息中间件系统,专注于流数据的⼀一致性分发和可靠存储、分布式实时计算和⾼高可⽤用分 布式系统架构等技术领域。 从事互联⽹网研发、架构10余年年,曾在浪潮集团、当当⽹网等公司从事架构相关⼯工作。2017年年加⼊入京东,期间提升京 东商城相关系统的性能和吞吐量量数倍。 ⽬目前致⼒力力于推进京东基础架构技术的创新、对外赋能与开源。 ⽬目录 Why 有什么用? What 如何定位?如何融入生态系统? 堆外内存 异步预加载 读写共⻚页 PLRU淘汰策略略 ⾼高并发 ≠ ⾼高性能 减少等待 异步: Future, Callback, React框架 流程拆分 减少锁:CAS原语 减少锁等待: 读写锁, 细粒度锁 写⼊入数据流程 IOThreads 接收请求 Requests Queue WriteThread 处理理 FlushThread 刷盘 ReplicationThread0 码力 | 36 页 | 6.02 MB | 1 年前3
微服务和Service Mesh 在多个行业落地实践性能 监控 服务 筛选 调用 链 调用 栈 JVM 监控 数据库 监控 性能 告警 自定义 数据 服务 告警 监控 大屏 账户 审计 CICD (开发流程管理) 代 码 检 出 代 码 编 译 镜 像 构 建 集 成 测 试 自 动 部 署 流水线管理 测试平台 (集成,场景测试) 单接口 用例 场景 用例 执行 文档一致 减少沟通 某视频监控企业:IT资产沉淀与IT能力复用 持续集成 容器化 注册发现 服务管理 www.163yun.com 开发集群 测试集群 CICD (开发流程管理) 流水线管理 代码 检出 代码 编译 镜像 构建 集成 测试 部署 测试平台 (集成,场景测试) 单接口 用例 场景 用例 执行 集 定时 执行 接口 覆盖 率 生产镜像 仓库 测试镜像 仓库 历史 管理 批量 导入 接口 监控 生产集群 镜像 同步 镜像拉取 自 动 部 署 手 动 触 发 代码到线上全流程管理 互联网化接口测试,场景测试 灵活执行集:冒烟,日常,回归 定时测试,MOCK测试 测试,生产镜像仓库分离,自 动同步 开发测试环境自动部署,生产 环境手动触发 持续集成0 码力 | 39 页 | 3.06 MB | 1 年前3
领域驱动设计&中台/化繁为简--DDD驱动复杂业务软件架构的演进CONTENTS CONTENT 产品介绍 业务挑战及架构目标 架构演进 总结展望 CONTENTS CONTENT 产品介绍 业务挑战及架构目标 架构演进 总结展望 全过程、全流程、一站式平台 产品特点 业务复杂 多专业领域 BIM全过程流转 人机交互频繁 产品规模大 350万+代码行 150+人团队 3+技术平台 产品特点 CONTENTS CONTENT 产品介绍 业务挑战及架构目标 架构演进 总结展望 架构演进 1 2 3 领域拆分 架构分层 构建领域模型 业务分析 2 1 3 4 分析业务流程 提炼业务规则 分析业务用例 识别业务对象 子域拆分 • 业务流程 • 专业知识 建模子域 计算子域 登录与 授权子域 报表子域 指标子域 做法子域 限界上下文拆分 • 业务用例 • 功能\语义相关性 • 技术应用0 码力 | 33 页 | 1.25 MB | 1 年前3
共 24 条
- 1
- 2
- 3













