踏上技术岗位这几年来很少思绪安静下来认真的去读一本书,认真的对一些技术原理进行分析,此书让至少让我找到了一些
如何在技术的方向和管理方向新的认知。
开始分为多个层次。这个阶段需要一个能够支撑百万到千万用户级的架构,
将初始的PHP换成Java,域名以member1.com到menber2.com直接的转换
淘宝阿里一直是很多技术工作者的天堂,国内乃至世界的很多聪明人都集中在里面;错过了很多机会,那就通过这部书来初步的
认知一下淘宝前世今生。
我想淘宝技术起步与大部分公司的技术有雷同处,并不是一出来就有一套非常牛X的设计方案和系统,几乎都是从初级简单的技术
开始,先保证产品的初步构思模型能都出来
好的技术和成功都是进化而来的,只能说前瞻性很机遇是相当的重要!通过子柳的这本书,我总结一下淘宝技术发展的几个阶段:
- 初始阶段
一个神秘项目的诞生,由淘宝组建时的十位元老开始,起初的网站架构是LAMP(Linux+
Apache+MySQL+PHP)架构技术是购买而来。拿到代码后技术人员对MySQL数据库的模型架构进行了修改;
1.把之前的单数据库进行的拆分;拆分成一个主库和两个从库;使得读写分离。
2.
采用Master/Slave模式,即Master主库负责主要的读写操作,将get操作比较频繁的数据复制到Slave库。
这样做的好处有很多,即存储的容量增加了,有了数据备份、增加了安全性、提升了读写效率。
3.Mysql换成Oracle,采用SQL Relay(数据库连接池)
- 懵懂阶段
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对外统一一切数据访问。