系统架构优化最佳实践.docx

上传人:11****ws 文档编号:2273436 上传时间:2019-05-03 格式:DOCX 页数:11 大小:1.57MB
下载 相关 举报
系统架构优化最佳实践.docx_第1页
第1页 / 共11页
系统架构优化最佳实践.docx_第2页
第2页 / 共11页
系统架构优化最佳实践.docx_第3页
第3页 / 共11页
系统架构优化最佳实践.docx_第4页
第4页 / 共11页
系统架构优化最佳实践.docx_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、1系统架构优化最佳实践看京东系统架构师如何让笨重的架构变得灵巧2目 录一 、 项 目 背 景 .3二、 系 统 拆 分 .31、 水 平 扩 展 .32、 垂 直 拆 分 .43、 业 务 拆 分 .44、 水 平 拆 分 .6三、 结 构 演 变 .6四 、 结 语 .113一 、 项 目 背 景随 着 业 务 的 复 杂 性 增 大 、 系 统 吞 吐 量 增 长 , 所 有 功 能 统 一 部 署 难 度 加 大 , 各 个 功 能 模 块 相 互 影 响 ,使 系 统 变 的 笨 重 且 脆 弱 ; 因 此 需 要 对 业 务 进 行 拆 分 、 对 系 统 进 行 解 耦 、 对 系

2、 统 内 部 架 构 升 级 , 来提 升 系 统 容 量 及 健 壮 性 。接 下 来 主 要 分 两 部 分 介 绍 : 系 统 拆 分 与 结 构 演 变 ;二、 系 统 拆 分系 统 拆 分 从 资 源 角 度 分 为 : 应 用 拆 分 和 数 据 库 拆 分 ;从 采 用 的 先 后 顺 序 可 分 为 : 水 平 扩 展 、 垂 直 拆 分 、 业 务 拆 分 、 水 平 拆 分 ;图 1 系 统 分 解 原 则1、 水 平 扩 展4水 平 扩 展 是 最 初 始 的 解 决 的 手 段 , 也 是 系 统 遇 到 瓶 颈 的 首 选 方 案 , 主 要 从 以 下 两 个 方

3、面 扩 展 :o 应 用 加 实 例 , 搞 集 群 , 把 系 统 吞 吐 量 扩 上 去 。o 数 据 库 利 用 主 从 进 行 读 写 分 离 , 数 据 库 其 实 是 系 统 最 应 该 保 护 的 资 源 。2、 垂 直 拆 分垂 直 拆 分 才 是 真 正 开 始 拆 分 系 统 , 主 要 是 从 业 务 功 能 角 度 拆 分 。 如 拆 出 用 户 系 统 、 商 品 系 统 、 交易 系 统 等 。 为 了 解 决 拆 分 后 各 个 子 系 统 之 间 相 互 依 赖 调 用 的 问 题 , 这 时 会 引 入 服 务 调 用 治 理 。 系统 复 杂 度 有 所 加

4、 大 , 但 系 统 基 本 解 耦 , 稳 定 性 相 对 提 高 , 做 好 降 级 就 能 避 免 因 其 它 系 统 功 能 异 常导 致 系 统 崩 溃 。业 务 对 应 的 库 也 会 按 照 对 应 的 业 务 进 行 拆 分 出 用 户 库 、 商 品 库 、 交 易 库 等 。3、 业 务 拆 分业 务 拆 分 主 要 是 针 对 应 用 层 面 按 功 能 特 点 拆 分 , 如 交 易 拆 分 出 : 购 物 车 、 结 算 页 、 订 单 、 秒 杀 等系 统 。 然 后 根 据 业 务 的 特 点 , 针 对 性 做 处 理 , 如 秒 杀 系 统 , 由 于 同 时

5、 参 加 秒 杀 的 商 品 有 限 , 可 以提 前 把 商 品 信 息 加 载 到 JVM 缓 存 中 , 自 身 减 少 外 部 调 用 提 高 性 能 , 同 时 商 品 系 统 也 减 轻 压 力 。数 据 库 拆 分 也 可 以 分 为 几 步 : 垂 直 分 表 、 垂 直 分 库 、 水 平 分 表 、 水 平 分 库 分 表 ;5垂 直 分 表 是 指 大 表 拆 多 张 小 表 , 可 以 根 据 字 段 更 新 或 查 询 频 次 拆 分 ;图 2 商 品 表 拆 分垂 直 分 库 是 指 按 业 务 拆 库 , 如 拆 出 订 单 库 、 商 品 库 、 用 户 库 等

6、水 平 分 表 是 解 决 数 据 量 大 , 把 一 张 表 拆 成 多 张 表 ;水 平 分 库 分 表 是 更 进 一 步 拆 分 表 ;6图 3 分 库 分 表4、 水 平 拆 分服 务 分 层 , 系 统 服 务 积 木 化 , 拆 分 功 能 与 非 功 能 系 统 , 以 及 业 务 组 合 的 系 统 , 如 最 近 比 较 火 的 大中 台 或 前 台 拆 分 ; 中 台 为 积 木 组 件 , 承 担 服 务 功 能 输 出 。 前 台 更 多 的 是 组 合 积 木 服 务 , 及 时 响 应业 务 发 展 , 如 在 电 商 网 站 单 品 页 能 看 见 主 图 、

7、价 格 、 库 存 、 优 惠 券 或 推 荐 等 信 息 , 都 是 组 合 各 积木 组 件 呈 现 。数 据 库 也 可 以 进 行 冷 热 数 据 分 离 ; 过 期 或 过 季 商 品 可 以 归 档 , 比 如 诺 基 亚 3210 手 机 , 早 已 经停 产 且 没 有 销 售 ; 用 户 查 看 订 单 时 , 更 多 的 只 是 查 看 最 近 1、 2 年 信 息 , 2 年 前 数 据 查 看 量 少 ,在 存 储 设 计 时 可 以 区 别 处 理 。三、 结 构 演 变结 构 演 变 主 要 是 随 着 系 统 复 杂 度 增 加 及 对 性 能 要 求 提 高 而

8、 不 得 不 做 的 系 统 内 部 架 构 升 级 ;7早 期 系 统 基 本 是 应 用 直 联 数 据 库 , 但 在 系 统 进 行 拆 分 后 , 功 能 本 系 统 不 能 单 独 完 成 , 需 要 依 赖 其它 系 统 , 就 出 现 远 程 调 用 ;图 4 早 期 应 用 结 构随 着 自 身 系 统 的 业 务 发 展 , 对 性 能 要 求 高 , 而 数 据 库 一 定 程 度 上 成 为 瓶 颈 , 就 会 引 入 缓 存 及 索 引 ,分 别 解 决 key-value 及 复 杂 检 索 ; 索 引 加 缓 存 现 在 已 经 成 为 解 决 高 并 发 的 基

9、 本 方 案 , 但 在 实 施 过程 会 有 所 区 别 ;14 年 对 3 亿 热 数 据 的 系 统 升 级 时 , 技 术 选 型 为 solr+redis, 考 虑 到 数 据 量 过 大 , 数 据 在 solr中 只 存 index, 而 结 果 只 存 并 返 回 主 键 id, 再 通 过 id 从 redis 中 读 取 数 据 , redis 也 不 存 放 全部 数 据 , 数 据 设 置 过 期 时 间 , 若 未 命 中 redis, 回 源 数 据 库 查 询 并 反 写 redis; 主 要 考 虑 资 源 与性 能 的 平 衡 , solr 的 存 储 减 少

10、 及 IO 性 能 提 高 , 结 果 数 据 只 在 redis 存 放 一 份 , redis 的 数 据 经过 运 行 大 部 分 是 热 数 据 ; 当 然 现 在 也 流 行 ES+Hbase 组 合 。8图 5 增 加 缓 存 及 索 引对 于 频 繁 使 用 的 数 据 , 从 集 中 缓 存 读 取 , 不 一 定 达 到 性 能 要 求 , 可 以 考 虑 把 数 据 入 JVM 缓 存 ,如 类 目 信 息 , 类 目 是 电 商 系 统 基 本 数 据 , 数 据 量 不 多 , 调 用 量 大 ;个 别 情 况 下 , 使 用 ThreadLocal 做 线 程 内 缓

11、 存 也 是 种 有 效 手 段 , 但 需 要 考 虑 数 据 清 除 及 有 效 性 ;在 修 改 商 品 信 息 时 , 业 务 对 商 品 信 息 的 校 验 有 名 称 长 度 、 状 态 、 库 存 及 各 业 务 模 式 等 , 而 为 了 参数 的 统 一 校 验 方 法 参 数 为 商 品 编 号 , 导 致 各 校 验 方 法 都 需 要 读 取 一 次 商 品 , 使 用 线 程 缓 存 可 以 解决 该 问 题 , 性 能 提 高 了 尽 20ms, 读 取 商 品 每 分 钟 减 少 近 万 次 ;9图 6 增 加 本 地 缓 存有 时 所 依 赖 系 统 性 能 不

12、 太 稳 定 , 避 免 出 现 因 第 三 方 系 统 影 响 系 统 , 把 依 赖 的 服 务 进 行 数 据 闭 环 ,与 Dao 一 样 当 成 系 统 的 数 据 源 ; 如 商 品 系 统 强 依 赖 商 家 系 统 的 商 家 信 息 服 务 , 若 商 家 服 务 不 稳定 , 商 品 系 统 一 半 服 务 都 不 稳 定 , 采 取 对 商 家 信 息 缓 存 一 份 , 降 低 外 部 风 险 , 把 风 险 控 制 在 自 己手 上 ;10图 7 远 程 服 务 进 化 成 数 据 源用 户 体 验 最 近 越 来 越 重 视 , 系 统 响 应 时 间 性 能 要

13、求 也 越 来 越 高 , 异 步 化 是 很 好 的 一 种 选 择 : 消 息中 间 件 ; 电 商 下 单 就 是 个 很 好 的 案 例 , 在 用 户 点 击 下 单 时 , 服 务 端 不 直 接 保 存 数 据 , 给 订 单 系 统发 送 消 息 , 就 直 接 返 回 支 付 页 面 , 在 用 户 支 付 过 程 中 , 订 单 系 统 异 步 进 行 数 据 保 存 ;业 务 层 、 数 据 层 的 范 围 越 来 越 宽 泛 , 业 务 层 可 以 分 为 基 础 服 务 与 组 合 服 务 ; 数 据 层 分 为 数 据 源 与索 引 缓 存 ; 依 赖 的 技 术 或 中 间 件 需 要 有 效 的 结 合 , 用 于 解 决 系 统 所 遇 到 各 种 问 题 。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 策划方案

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。