摘要: 目前,国内自主研发的文件系统可谓凤毛麟角。淘宝在这一领域做了有效的探索和实践,Taobao File System(TFS)作为淘宝内部使用的分布式文件系统,针对海量小文件的随机读写访问性能做了特殊优化,承载着淘宝主站所有图片、商品描述等数据存储。本文揭秘了淘宝自主研发的文件系统TFS那些事儿。AD:51CTO学院:IT精品课程在线看!TFS(Taobao FileSystem)是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,其设计目标是支持海量的非结构化数据。目前,国内自主研发的文件系统可谓凤毛麟角。淘宝在这一领域做了有效的探索和实践,Taobao File System(T 阅读全文
posted @ 2014-04-02 17:16 郑文亮 阅读(1361) 评论(0) 推荐(0) 编辑
摘要: 8月27日下午,在IT168系统架构师大会存储与系统架构分论坛上,淘宝网技术委员会主席,淘宝网核心工程师章文嵩向我们详细介绍了淘宝网图片处理与存储系统的架构。章文嵩博士的演讲日程包括了淘宝的整个系统架构、淘宝图片存储系统架构,淘宝网独立开发的TFS集群文件系统,前端CDN系统以及淘宝网在节能服务器方面的应用和探索。LVS创始人,淘宝网技术委员会主席,淘宝网核心工程师章文嵩先生 本文侧重介绍淘宝网后台的图片存储系统架构、包括TFS集群文件系统,以及前端处理服务器架构。该系统前端CDN架构,以及淘宝网在节能服务器应用方面的探索,请参考: 淘宝商城286亿图片访问的CDN架构全解析 教你省钱!... 阅读全文
posted @ 2014-04-02 16:21 郑文亮 阅读(7550) 评论(0) 推荐(1) 编辑
摘要: 一、定义无状态服务(stateless service)对单次请求的处理,不依赖其他请求,也就是说,处理一次请求所需的全部信息,要么都包含在这个请求里,要么可以从外部获取到(比如说数据库),服务器本身不存储任何信息有状态服务(stateful service)则相反,它会在自身保存一些数据,先后的请求是有关联的二、优劣有状态服务常常用于实现事务(并不是唯一办法,下文有另外的方案)。举一个常见的例子,在商城里购买一件商品。需要经过放入购物车、确认订单、付款等多个步骤。由于HTTP协议本身是无状态的,所以为了实现有状态服务,就需要通过一些额外的方案。比如最常见的session,将用户挑选的商品(购 阅读全文
posted @ 2014-04-02 15:53 郑文亮 阅读(6054) 评论(0) 推荐(1) 编辑
摘要: 上周六参加了一场由淘宝的架构师,曾宪杰先生主讲的淘宝网架构分享。然后马上就出差了,一直没来得及总结,今晚比较有空,把这次听到的比较有启发的观点记录一下一、为什么stateless比较有利于实现水平伸缩关于什么是stateless的扫盲,见这个贴:http://kyfxbl.iteye.com/blog/1831869一般有一个共识,就是把应用做成无状态的,会比较容易实现水平伸缩。但是以前一直有一个想法,就算应用是有状态的,也可以做成水平伸缩:只需要在负载均衡那里做一个session绑定就可以了,根据某种标识,把请求固定地发送到特定的server上但是相对于有状态,stateless是更好的,主 阅读全文
posted @ 2014-04-02 15:51 郑文亮 阅读(8712) 评论(2) 推荐(0) 编辑
摘要: 本文着重介绍sharding的基本思想和理论上的切分策略,关于更加细致的实施策略和参考事例请参考我的另一篇博文:数据库分库分表(sharding)系列(一) 拆分实施策略和示例演示一、基本思想 Sharding的基本思想就要把一个数据库切分成多个部分放到不同的数据库(server)上,从而缓解单一数据库的性能问题。不太严格的讲,对于海量数据的数据库,如果是因为表多而数据多,这时候适合使用垂直切分,即把关系紧密(比如同一模块)的表切分出来放在一个server上。如果表并不多,但每张表的数据非常多,这时候适合水平切分,即把表的数据按某种规则(比如按ID散列)切分到多个数据库(server)上。当然 阅读全文
posted @ 2014-04-02 14:59 郑文亮 阅读(995) 评论(0) 推荐(0) 编辑
摘要: 数据库的sharding技术作为一个“新瓶装旧酒”的概念,在新的应用环境中被赋予了新的意义。随着云计算的发展,sharding在最近几年是越来越火热,越来越多的产品开始声称自己支持sharding功能。那么到底什么是sharding,sharding到底能为你的数据库应用带来哪些好处。另外最重要的,如何实现一个sharding系统,有哪些sharding算法可供选择。本文将为你解决这些问题。一.简介1.背景数据库的扩展是一个永恒的话题。对于传统的关系数据库,采用的是纵向扩展(Scale Up)的方式,即买更好的机器添加更多的资源来取得更好的性能(如硬件升级、更快更多的CPU、更大的内存、更多更 阅读全文
posted @ 2014-04-02 14:52 郑文亮 阅读(11657) 评论(0) 推荐(0) 编辑
摘要: 导读:Scale Out(也就是Scale horizontally)横向扩展,向外扩展 Scale Up(也就是Scale vertically)纵向扩展,向上扩展 无论是Scale Out,Scale Up,Scale In,实际上就是一种架构的概念,这些概念用在存储上可以,用在数据库上,网络上一样可以。 简单比喻下ScScale Out(也就是Scale horizontally)横向扩展,向外扩展Scale Up(也就是Scale vertically)纵向扩展,向上扩展无论是Scale Out,Scale Up,Scale In,实际上就是一种架构的概念,这些概念用在存储上可以,用在 阅读全文
posted @ 2014-04-02 14:30 郑文亮 阅读(3477) 评论(0) 推荐(0) 编辑
摘要: 时间过得很快,来淘宝已经两个月了,在这两个月的时间里,自己也感受颇深。下面就结合淘宝目前的一些底层技术框架以及自己的一些感触来说说如何构建一个可 伸缩,高性能,高可用性的分布式互联网应用。相关专题:淘宝双11背后高并发技术讨论一 应用无状态(淘宝session框架)俗话说,一个系 统的伸缩性的好坏取决于应用的状态如何管理。为什么这么说呢?咱们试想一下,假如我们在session中保存了大量与客户端的状态信 息的话,那么当保存状态信息的server宕机的时候,我们怎么办?通常来说,我们都是通过集群来解决这个问题,而通常所说的集群,不仅有负载均衡,更重要的是要有失效恢复failover,比如tomc 阅读全文
posted @ 2014-04-02 14:25 郑文亮 阅读(1837) 评论(0) 推荐(0) 编辑
摘要: 江枫先给我们介绍一下自己,和你在这次淘宝“双十一”事件中所扮演的角色?大家好,我是淘宝技术保障部的江枫。目前主要负责数据库的稳定性这一块。双十一这一天,我主要是负责协调整个数据库团队和保障整个数据库在“双十一”过程中的稳定性不受任何影响。那给我们详细的谈一下淘宝网现在整个数据库整体的一个架构,包括它硬件的组成。淘宝的数据库发展到今天,已经是一个非常复杂的系统。我大概算了一下,淘宝目前所有的数据库服务器加起来可能已经超过800台。那在这么一个规模底下,淘宝的数据库团队这么多年也是随着淘宝的业务发展一起成长起来的,但淘宝数据库目前核心的数据库还在小型机和高端的存储上面,还有很多的数据库现在是用的是 阅读全文
posted @ 2014-04-02 14:01 郑文亮 阅读(7720) 评论(0) 推荐(0) 编辑
摘要: 网上经常要查论文文章书籍看看,经常需要付费下载。转这个给大家试试:(网上看的,我也没仔细试验)也需有用: 如何通过国家图书馆下载论文 http://weibo.com/p/1001603694597959207549 (需要微博登陆) 或看这个 : https://www.evernote.com/shard/s329/sh/e32d6f00-4ee8-4d1d-b694-3e59c3311595/038ef5c07a87249482fba3a3b588083a 阅读全文
posted @ 2014-04-02 11:12 郑文亮 阅读(242) 评论(0) 推荐(0) 编辑
摘要: robby老师讲了套hadoop视频,讲的比的深入浅出,内容很丰富,把网盘下载地址提供给大家一下:视频下载啦很大,有图有真相:1,Hadoop介绍,HDFS和MapReduce工作原理:http://kuai.xunlei.com/d/CLCBYHQKJQNT2、安装Hadoop(单机版和集群), HDFS的命令行工具使用(1):http://kuai.xunlei.com/d/CSMFERCHAGEE 阅读全文
posted @ 2014-04-02 10:43 郑文亮 阅读(486) 评论(0) 推荐(0) 编辑