淘宝大牛们——晒一晒淘宝网技术内幕

12819阅读 0评论2012-12-06 sdsdfs1111
分类:系统运维

淘宝网是一个在线商品数量突破一亿,日均成交额超过两亿元人民币,注册用户接近八千万的大型电子商务网站,是亚洲最大的购物网站。那么对于淘宝网这样大规模的一个网站,我猜想大家一定会非常关心整个网站都采用了什么样的技术?前端设计和后台架构有哪些内幕?淘宝所依赖的数据库到底是什么?它用到了哪些存储技术?淘宝网的应用服务器上采用的是Linux操作系统。在应用服务器前端,淘宝采用了Web Server做了一次转发,选择的Web服务器是大名鼎鼎的Apache。想知道淘宝的技术大牛们在淘宝技术上有哪些看点?本专题将揭晓谜底,重点晒一晒淘宝大牛们在淘宝数据库、前端设计、后台架构以及存储方面的见解。

淘宝数据库

在淘宝网的应用中,采用了两种关系型数据库管理系统。一个是 Oracle公司的Oracle 10g,另外一个是Sun MySQLMySQLOracle是一款优秀的、广泛采用的商业数据库管理软件。有很强大的功能和安全性,可以处理相对海量的数据。而MySQL是一 款非常优秀的开源数据库管理软件,非常适合用多台PC Server组成多点的存储节点阵列(这里我所指的不是MySQL自身提供的集群功能),每单位的数据存储成本也非常的低廉。用多台PC Server安装MySQL组成一个存储节点阵列,通过MySQL自身的Replication或者应用自身的处理,可以很好的保证容错(允许部分节点失 ),保证应用的健壮性和可靠性。可以这么说,在关系数据库管理系统的选择上,可以考虑应用本身的情况来决定。

 

淘宝前端设计篇

淘宝网的Web展现层的框架用的不是struts,不是webwork,不是spring mvc等等。淘宝网的Web展现层的框架用的是集团内部自主开发的一套Web框架。这个框架能够解决一些其他Web框架不能解决的、在淘宝的应用中又会出 现并需要解决的问题。在淘宝的多个应用中,也采用了一些开源的框架,比如SpringiBatisjBPMHessianMina等等。这些开源 软件的采用为我们构建应用系统提供了很大的帮助。

 

淘宝后台构架篇

20035月至20045月,小而快的简单架构,基于LAMP,符合当时的需求。

20042月至20083月,一个懵懂的阶段,开始分为多个层次。这个阶段需要一个能够支撑百万到千万用户级的架构,必须容易扩展;系统从WebLogic迁移至了JBoss;开发了大量软件,例如TFSiSearchTDBMCDN

200710月至200911月,开始有前瞻性,走向产品化及服务化。非核心的数据由Oracle迁移到了MySQL上,构建起了消息系统和服务框架,淘宝开放平台(TOP)正式上线。

20098月至今的淘宝则更系统化、智能化及专业化,这是发展的必然方向。知识经验慢慢融入工具之中,降低了门槛,减少误操作几率;操作从人工处理逐步转为系统自主决策;在稳定性和性能方面有长足发展。

 

淘宝存储篇

淘宝图片系统在整个网站中的重要性和发展历史;存储淘宝图片的分布式文件系统,以及它的架构、性能指标和现有的部署规模;基于NginxImage ServerCache系统;淘宝CDN系统的总体结构,一级Cache和二级Cache的规划和基于开源的系统实现;低功耗服务器在 CDN上的试验规划;总结了淘宝图片存储和发送系统设计的原则和经验。

 

 

上一篇:Java程序员必读:领悟Java编程思想
下一篇:SAP成功案例:企业ERP与数据库的无缝整合