刘道平-从0到1,移动政务应用小程序系统架构演化大多政务服务APP功能单一,仍以政务信息发布为主,缺乏实用的网上办事和便民服务。 仅有15%的政务APP提供办事服务,存在“信息有余、服务不足”的问题。 2、下载APP成为负担 政务APP盲目开发泛滥,用户为了办事需要下载多个APP,成为一种负担。 3、优化不足体验差 政务APP接入政务服务,没有结合移动端的访问特性进行移动化改造,用户体验差。 4、缺少持续运营: 政务APP运营维护乏力,版本迭代缓慢,存在大量僵尸应用。 一、移动政务应用服务现状与痛点 二、一个特殊的移动政务应用项目 三、政务服务小程序平台研发过程 四、政务服务小程序平台架构演化 五、政务服务系统架构小结与思考 4、一个特殊的移动政务应用项目 3 资源少:初期团队人员少、 业务推动阻力大 1 时间紧: 1月启动,5月上线 2 目标高:高频便民服务、 突出改革亮点,迎接大领 导视察 4 需求多:公积金、社 保、出入境、交管等, 服务很多,需要梳理 包括个人中心、服务、待办服务、证照服务、公共服务、外部能力、业务办理服务和运营管理服务模块 12、系统部署架构反复评审论证 一、部署架构 1、政务云电子政务外网 :数据库、应用服务 2、政务云互联网区:静态资源、网关 3、互联网区:小程序、云服务 二、安全防护 1、仅开放指定端口 80 443 2、域名须有HTTPS证书 3、白名单 13、安全渗透测试、运维监控 -- 确保系统稳定 一、业务应用上线前必须经过安全渗透测试。0 码力 | 35 页 | 15.60 MB | 1 年前3
苏宁易购小程序架构实践 苏宁 禹立彬• 围绕着小程序,各厂家也推出了一系列针对小程序的生态标准,联合 登录,授权获取用户信息,支付,通知消息,客服等等 • 对于这些生态功能来说,也需要一系列基础服务去支持 小程序的不足 • 组件化能力不足,代码复用能力弱 • API不统一,代码无法兼容 • 这些呼唤着快速解决方案 苏宁的小程序群 • 苏宁易购小程序,苏宁拼购,苏宁特卖,苏宁母婴。。。 • 苏宁优惠等 将cookie作为hash拼接到URL中 • 内嵌的web页面用JS取hash里的cookie参数,document.cookie写入 • cookie写入后,登录状态存续 • 页面本身不需要登录,限制资源请求在cookie写入后 • cookie不能是http only Webview + 后端中转 发起真正的请求前将cookie,POST 到后端服务,获得cookie对应的key ,然后请求0 码力 | 36 页 | 833.39 KB | 1 年前3
《58到家技术架构快速规划与落地》 - 沈剑2. 监控平台-接口 • 哪种监控最精准? • 站在调用方的角度来评判服务是否OK 58集团技术专场 3. 调用链跟踪-解决什么问题 实际问题 瓶颈不确定 定位周期长 依赖复杂 监控不足 连环报警 覆盖缺失 58集团技术专场 3. 调用链跟踪-修改哪里 � 典型的请求路径 � 改造点 (1)Web-Framework (2)RPC-Framework (3)cache-client0 码力 | 42 页 | 1.52 MB | 1 年前3
唯品会调度系统的前世今生位与选型 需要解决的问题 1 6 4 3 2 … 异构/多语言难以支持 5 缺乏统一监控、统一管理 (进程假死、运行状态未知) 缺乏容错、容灾,高可 用 缺乏分布式处理 无法合理利用机器资源 难以问题追踪 选型对比 Crontab Quartz Linux系统级的定时任务执行器 缺乏分布式运算和集中管理功能 无法做到高可用 TBSchedule Elatic-Job Java事实任务标准 功能单一,只支持Java,不支持 Shell(PHP)和消息驱动的作业调度 对任务超时、任务执行情况、监控逻辑 支持粒度功能较单一或缺乏 没有容器化选型? 调度产品的定位 简易开发、简单维护 高可用、分片并发处理、资源调度动态平衡 支持Java、Shell以及本地模式(VIP还支持消息模式) 统一配置、统一监控、统一管理 VIP弹性调度系统 -- Saturn 开源地址: Github.com/vipshop/Saturn 多种作业类型与 作业模式 资源动态平衡 框架与业务隔离 三大功能特性 Shell作业 消息作业* JAVA作业 分布式与本 地作业模式 • 完美兼容现有PHP的作业,可无缝迁移,成本最低 • 提供多种业务开发模式,满足不同的业务需求 • 多种业务运行模式,即可分布式管理也可本地管理 • 通过异步消息实现业务编排* 多种作业类型 人工指定 运行节点 系统自动 平衡负载 资源利用 • 灵活的运维配置与部署0 码力 | 58 页 | 5.40 MB | 1 年前3
降级预案在同程艺龙的工程实践-王俊翔降级预案在同程艺⻰龙的⼯工程实践 演讲者 / 王俊翔 同程艺龙 ⾃自我介绍 搜索故障 微信⼩小程序 API⽹网关 资源1 搜索引擎 统⼀一资源⽹网关 资源2 资源3 资源4 …… 资源4 ⼤大量量超时 统⼀一资源⽹网关 搜索引擎 API⽹网关 ⼤大量量请求超时 缺乏熔断设计 交易易故障 第三⽅方⽀支付 ⽀支付中⼼心 ⽀支付回写 消息队列列 ⽀支付通知 交易易中台 serviceC serviceC- degrade 弱依赖 强依赖 强依赖 备选服务 熔断、限流 降级 业界解决⽅方案 - HYSTRIX Netflix开源的一款容错框架,支持多种降级熔断技术 资源隔离 断路路器器 降级操作 请求合并 请求缓存 实践过程中遇到的问题 • 业务改造成本⾼高,代码耦合,维护成本增⾼高 • 固化策略略,需线下修改代码,测试,发布,线上应急策略略响应不不 应⽤用、服务、策略略产品化、数据化 • 应⽤用、服务指标实时监控,健康状态评估 • 实时监测服务降级执⾏行行状态,降级发⽣生点数据 快照及时回溯 • 降级策略略管理理 • 多种策略略⽅方案:失效备援、服务熔断、资源隔 离、延迟处理理 • 策略略灵活调整,实时监控策略略运⾏行行状态 应⽤用 / 服务 降级代码管理理 • 线上代码开发、测试、发布 • 降级代码统⼀一管理理 • 脚本代码动态编译,对象管理理0 码力 | 26 页 | 18.67 MB | 1 年前3
领域驱动设计&中台/演进式架构的平台化落地服务运⾏行行治理理 服务 部署 运⾏行行架构治理理 故障 分析 定义架构 约束条件 微服务架构设计 服务地图 设计 API设计 部署架构设计 微服务⼯工程创建 开发 框架 架构 ⻛风格 资源 配置 … 架构演进 服务 关系 分析 代码 质量量 分析 数据 库分 析 领域 模型 分析 运⾏行行资 源管理理 PaaS、 容器云资 源管理理 公共 部分 产品、⼈人 员维护 ⽣生产环境 部署架构设计 测试环境 部署架构设计 绘制部署架构,组合服务和 部署元素 部署架构变更更历史 推荐部署架构(远期规划) 微服务开发框架定制 代码架构⻛风格选择 资源配置 数据库版本管理理 是否⾃自动⽣生成API/ Dockerfile/流⽔水线 ⽣生成 代码 到GIT 仓库 架构分析- 从契约反向识别实现与模型差异 架构分析- 架构Fitness 获得运⾏行行架构、实例例状态 ELK⽅方 案 对接资源室 获得组织结 构 对接175产品 定义管理理 Fitness Function执 ⾏行行引擎 集成Sonar Server 对接容器云 PaaS API变更更历史 部署架构变更更评审 定义 契约 契约变 更更评审 未评审 契约 提⽰示 已申请资源 登记 服务部署 脚本⽣生成 部署架构 推到⽬目标0 码力 | 42 页 | 2.95 MB | 1 年前3
领域驱动设计&中台/淘宝应用架构升级——反应式架构的探索与实践01 架构升级的效果 02 架构升级的思考 03 架构升级的实践 架构升级的思考 现有架构的问题? 现有架构的问题 同步等待 • 现有同步模型,线程 多 load ⾼高 • 资源利利⽤用率 应⽤用本身的解决⽅方案? 并⾏行行度有限 • ⽆无法纯业务依赖并发 • 微服务化让问题更更凸 显 • RT 累积 RT 与 ⽤用户增⻓长 RT 累积带来成本 • data) -> acc + data); 流 - 性能 全异步、流式 CPU数个业务线程 更更少的上下⽂文切换、更更少(⽆无)的竞争、更更低的LOAD 业务等效依赖的异步并发 更更⾼高效的资源利利⽤用率 Universal Scalability Law 系统流⽔水线并⾏行行处理理 流 - 分布式 � ) �� �� �� �� �� �� �� ��� �� �� �� CPU 压不不满、IO较多、⾼高Load) * 可以确定获得⼤大⽐比例例收益 3. 业务逻辑简单优先 * 尤其在改造起步阶段,降低难度 4. 业务压⼒力力不不⼤大 * 有业务升级改造资源投⼊入 实施难点和策略略 • 团队 • 缺乏技能 • 缺乏意识 • 业务 • 缺乏动⼒力力 • 技术 • 缺乏⼯工具 • ⾃自上⽽而下 • 组织保障 • 全员宣导0 码力 | 27 页 | 1.13 MB | 1 年前3
大规模分布式系统架构下调测能力构建之道我写了个消息Consumer,布到线上准备测测,结果,别人的消 息先到了,一下把我的预置数据全搞乱了… 7. 我的开发机性能还行,我想自己装一套依赖环境提高开发调测 效率,结果消息服务、缓存服务、服务框架装完一启动,80% 的系统资源就没有了,想想还有一堆的应用服务还没装,直接 泪崩… 8. 办公区断网,所有线上依赖环境都无法访问了,得,今天啥也 干不了了,回家洗洗睡吧…. … ….. ……… 1 2 3 解决之道 提供消息的发布、暂存、订阅、消费处理能力 代理门面 将MQ的调用用代理模式做一层封装。 开关机制 支持多级开关切换 消息预取 通过消息预判定,解决找不到消费者导致消息被抛弃 的问题。 优势:能用极低的资源损耗实现单机环境下对分布式 MQ服务的仿真模拟 分布式MQ服务 Producer2 …. Broker2 Topic1-q3 Topic2-q2 Topic3-q1 Broker3 … data1 score2 data2 … … 其它分布式服务的调测支持 对象存储 1.分布式环境下,为不同开发团队/人员配置独立的文件路径(Direction、Bucket)可以有效进行资源隔离。 2.单机环境下,可以参考MQ,采用本地File I/O实现的存储机制来mock 。 DataBase SandBox 1.为每个开发人员或测试人员提供一个单独(schema/catalog)的测试数据库。0 码力 | 19 页 | 2.74 MB | 1 年前3
QCon北京2018-业务高速发展下的互联网金融系统架构演变-张现双+-------Joe Armstrong 关键点 分而治之,缩小竞争面 加速资源交换,更快响应 共享资源串行操作 数据一致性(脏读,丢失更新等) 业务纵向拆分,化整为零 资源拆分,横向扩展 cache,index,partition parallel non-blocking sync、lock,cas0 码力 | 42 页 | 19.96 MB | 1 年前3
领域驱动设计&中台/架构分层模型适配如何从⼀一盘散沙到百万雄师 百万雄师的铸造秘密 — 踢正步 叠被⼦子 知⾏行行合⼀一 每个⼈人⽇日常就能做到 在⽇日常最细微处抵抗懒散腐化 坚持塑造纪律律 DDD分层架构 不不同模型适配(名词) 资源模型: 应⽤用想要⼀一把查询获取所有信息,⼀一个操作做完业务 前端应⽤用 API服务 业务领域 基础设施 业务模型: 精确表达⼀一个业务概念,分治管理理复杂度 存储模型: 性能最优化 DDD分层架构 POST GET PUT DELETE 前端应⽤用 API服务 业务领域 基础设施 业务操作: 注册 注销 登录 退出 修改 撤销 存储动作: INSERT UPDATE DELETE 资源模型: 应⽤用想要⼀一把查询获取所有信息,⼀一个操作做完业务 业务模型: 精确表达⼀一个业务概念,分治管理理复杂度 存储模型: 性能最优化 不不同层级的模型坚决隔离, 严格⼀一对⼀一翻译映射,不不准复⽤用 DELETE 动词翻译映射 create retrieve update delete save find DDD分层架构治理理 前端应⽤用 API服务 业务领域 基础设施 名词翻译映射 资源模型: ⽤用户想要⼀一把查询获取所有信息,⼀一个操作做完业务 业务模型: 分解的业务概念 存储模型: 性能最优化 HTTP字符⽂文本 Json 视图对象 ⼀一个⽤用户请求⼀一个视图对象 多个固定的业务概念表达业务规则0 码力 | 39 页 | 2.54 MB | 1 年前3
共 18 条
- 1
- 2













