淘宝技术架构介绍

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
·老生常谈
·空间换时间 ·时间换空间
·效果和成本的平衡
V3.0 消息系统
·集群Topic方式 ·发送事务
操作 AA业PPP务P 系统
消息
AA消PPP息P 系统
AA后PPP续P
处理1
AA后PPP续P
处理2
AAP…PP…P
V3.0 可用性
·同城分流 ·异地容灾 ·n+1原则 主业务
可切换
边缘业务
主机房一
Weblogic
Function 2
Weblogic
Function 1
淘宝MVC
Weblogic
· 引入搜索引擎ISearch
淘宝MVC
Weblogic
EJB
淘宝MVC
EJB
淘宝MVC
OR-MapOpRin-gMapping EJB
EJBห้องสมุดไป่ตู้
OR-Mapping
OR-Mapping
Read/Write
PV 全网成交
0
2003 2004 2005 2006
V1.0
V1.1
V2.0
V2.1
2007 V2.2
2008 2009 V3.0
V1.0 2003.5 – 2004.1
· 非典时期 · 马云住宅 · LAMP · MySQL读写分离
FumncpAoteipdoaaF_nrcpuDhhnmeBpcpAot4eipdoaa_nrcpDhhF3euBpmn4cpAoteipdoaa_rncpDhFh2euBpmn4cpAoteipdoaa_nrcpDhh1eBp4
主机房二
数据同步
异地主机 房
V3.0 自动化
A:I wanna the fried chicken! B:Sir, we will be arriving at
the nearest KFC soon.
总结
·适当放弃一致性 ·备份和隔离解决稳定性问题 ·分割和异步解决性能问题 ·自动化降低人力成本 ·产品化管理
淘宝系统架构介绍
淘宝发展历程
2500 2000 1500 1000
2008年每天: 增加800G的数据 高峰 期流量超过30G/S 处 理超过1000G的日志 处理40亿次的用户信息访问 缓存处理60亿次的请求
500
2008年: 交易额999.6亿 注册用户9800万 卖出1.4亿件服饰 卖出1366万部手机 卖出3130万张充值卡
1
2
Node n
Node n
需求
·高稳定性
·高数据安全 ·高可用性
·高容量,高性能
·高并发处理能力 ·高存储容量 ·低响应时间
·低成本
·硬件 ·人力
处理策略
·高稳定性
·备份 ·隔离
·高容量,高性能
·“人”多力量大 ·分割 ·异步
·成本
·提高效率 ·自动化
整体策略:三角原则(CAP)
可用性
扩展性 成本
Read
Read/Write
Slave1
复制
MySQL Master
复制
Read
Slave2
V1.1 2004.1 – 2004.5
·MySQL迁移至Oracle
·引入SQL Relay中间件
FunctionF4unction 3
Apache
ApachFeunction
2 Function
1
mod_phpm4od_php4Apache Apache
Function 1
JBoss
JBoss
淘宝MVC 淘宝MVC
Spring Spring
Ibatis OR-Mapping
分布式存储
Node 1
Node 2
Node n
Oracle Oracle Oracle Oracle
Search
Node Node
1
2
Read/Write ……
Node Node
cache
Read/Write
Oracle Oracle
h
……
Node Node
1
2
Node n
V2.2 2006.10 – 2007.12
·分布式存储TFS
·分布式缓存Tair ·搜索引擎升级
cache
…… Function 3Function 2
JBoss JBoss 淘宝MV淘C宝MVC
SpringSpring Ibatis Ibatis
……
Node 2
功能分组2
Node 1
……
Node 2
功能分组3
Node 1
……
Node 2
Node n
Node n
Node n
服务2
功能分组1
Node1
……
Node2
功能分组2
Node1
……
Node2
Node n
Node n
V3.0 应用透明伸缩
·业务处理
·统一和隔离 ·负载均衡 ·一片私有的“云”
pear
DB
pear
mod_php4
DB
mod_php4
SQL
RelaSyQL
pear Relay
DB
pear DB
SQL Relay
SQL Relay
Oracle
V2.0 2004.2-2005.03
· php迁移至java
· MVC框架WebX
Function 4 Function 3
·项目管理工具AntX
· 稳定性
· 容灾
· 成本
· 自动化 · 数据迁移到MySQL
服务/消息
V3.0 应用透明伸缩
·展现层-会话处理很重要
·粘性session ·session复制 ·集中式session ·不用session
V3.0 应用透明伸缩
·业务层
AAAPPPPPP
AAAPPPPPP
服务 1
功能分组1
Node 1
效果 = 周长 周长和三个边长为线性关系
成本 = 面积 面积和三个边长成指数关系
当边长小于某阀值 效果 = 最小边长度
一致性
V3.0 2007.12 --
· 应用透明伸缩
· Session框架 · 高性能服务框架HSF · 消息系统Notify · 业务中心建立
·数据透明伸缩
· 分布式数据层TDDL
V3.0 数据透明伸缩
·容量和性能的扩展 核心
·垂直分割
业务 数据
……
·按功能
·水平分割
·按规则
·路由
业务1 ……
·透明化
·复制
·空间换时间
业务2 ……
V3.0 数据分割策略
·复杂结构的水平分割处理方案
·n策略
·2n策略
帖子
·n+1策略
·读写分离策略
订单
好友动态
数据优化策略:时空原则+28原则
Oracle
dump
Search
Node 1
Node 2
…… Node n
V2.1 2004.10 – 2007.01
· weblogic迁移至jboss
· 支持分库的数据访问框架
· 抛弃EJB · 引入Spring · 基于BDB的缓存 · 建立CDN
……OR淘-SFJM宝pBuOroanMipnsRc淘sVtgp-SiJMC宝oipBnnoragMispn3FsVgpuCOinnRcg淘t-SiJM宝opBnroaMipsn2sVFpgCuinOngRc淘t-SiJM宝opBnroaMipns1sVgpCing
相关文档
最新文档