淘宝技术发展历程(《淘宝技术这十年》阅后总结)

来源:互联网 发布:淘宝天猫类目采集器 编辑:程序博客网 时间:2024/05/05 14:24
    踏上技术岗位这几年来很少思绪安静下来认真的去读一本书,认真的对一些技术原理进行分析,此书让至少让我找到了一些如何在技术的方向和管理方向新的认知。
淘宝阿里一直是很多技术工作者的天堂,国内乃至世界的很多聪明人都集中在里面;错过了很多机会,那就通过这部书来初步的认知一下淘宝前世今生。
    我想淘宝技术起步与大部分公司的技术有雷同处,并不是一出来就有一套非常牛X的设计方案和系统,几乎都是从初级简单的技术开始,先保证产品的初步构思模型能都出来好的技术和成功都是进化而来的,只能说前瞻性很机遇是相当的重要!通过子柳的这本书,我总结一下淘宝技术发展的几个阶段:
  •    初始阶段
    一个神秘项目的诞生,由淘宝组建时的十位元老开始,起初的网站架构是LAMP(Linux+ Apache+MySQL+PHP)架构技术是购买而来。拿到代码后技术人员对MySQL数据库的模型架构进行了修改;
1.把之前的单数据库进行的拆分;拆分成一个主库和两个从库;使得读写分离。
2.采用Master/Slave模式,即Master主库负责主要的读写操作,将get操作比较频繁的数据复制到Slave库。
    这样做的好处有很多,即存储的容量增加了,有了数据备份、增加了安全性、提升了读写效率。
3.Mysql换成Oracle,采用SQL Relay(数据库连接池)
  •     懵懂阶段
 开始分为多个层次。这个阶段需要一个能够支撑百万到千万用户级的架构,将初始的PHP换成Java,域名以member1.com到menber2.com直接的转换
1.使用了阿里的mvc框架WebX、控制层用Spring、持久层使用的是Ibatis,站内搜索引擎iseach
2.由于处理能力上限,对封闭的数据库进行了整改,开发出了数据库路由DBRoute,统一处理了数据的合并、排序、分页等操作,让程序员像使用一个数据库一样操作多个数据库里的数据.
3.使用了缓存和CDN内容分发网络,开发出了自己的TFS文件服务器以及Tair缓存服务器解决商品快照文件存储等问题,这样已经可以支持千万级用户级别
  •    进阶成熟阶段
到了这样阶段淘宝更加系统化,服务号,专业化,本书主要介绍了如下改变
1.根据数据库路由分独立的业务模块,拓展WebX mvc框架,开发了自己的session框架等,将模块单独的jar打包
2.系统拆分,每个系统单独部署,专人专事,降低耦合,淘宝的系统拆分成了如下架构:
    
    解释:
    基础业务服务:UIC-->用户交易系统  Forest -->类目属性的服务化。。。
    核心业务服务:TC-->交易中心 IC-->商品中心  SC-->店铺中心。。。
    业务系统:TM-->交易系统 IM-->商品业务 Detail-->商品详情。。。

3.系统拆分后开发出了自己的实时消息中间件HSF和异步消息中间件Notify、数据库路由TDDL对外统一一切数据访问。 
0 0