就下载 —— 安全下载、无毒手机软件、绿色软件官方下载网站最近更新|下载排行|热门标签|收藏本站

您现在的位置是:就下载 > IT资讯 > 软件应用 > 淘宝技术发展(Java时代:创造技术-Tair)

淘宝技术发展(Java时代:创造技术-Tair)

时间:2014-07-03 13:48:18 来源: 互联网 复制分享

《淘宝技术发展(Java时代:创造技术-Tair)》根据互联网资讯由就下载(www.9xz.net)为您收集整理。
  Tair

  TFS的开发,让淘宝的图片功能得到了充分的发挥。同TFS一样,很多技术都是在产品的推动下得到发展的。在讲下面的技术之前,有必要说说那些年,我们一起做过的几个产品。

  先说个比较悲剧的——【团购】,这个团购可不是现在满大街挂的那种groupon类型的模式,在groupon出生之前,在2006年,淘宝的产品经理一灯就提出了“团购”这种产品。一灯最初的设想是让买家在社区发起团购,“团长”找到足够的人之后,去跟卖家砍价,这类似于现在蘑菇街的“自由团”。但由于种种原因,在开发的时候产品的功能做了裁剪,跟最初的设想比起来偏离了一点,变成了让卖家设置团购价,在买家达到指定的数量之后,以团购价成交。这个功能看起来是结合了淘宝一口价和荷兰拍的另一种交易模式,但不幸没有支撑下去,这种交易方式最大的弱点就是让买家看到了卖家的底牌,即便达不到团购的数量,他们也往团购的价格上砍。当时为了引流量,淘宝网开辟了团购专区,实诚的卖家在达不到团购数量的时候,被砍价砍亏了,狡猾的卖家干脆提高原价,利用这个专区做促销。在接下来的两年里这个产品沦落成了促销工具(话说现在满大街的团购,其实也就是促销)。这个产品,让研发人员对“产品”这个概念有了深刻的认识。

  

 

  再说一个更加悲剧的——【我的淘宝】,我的淘宝是给会员管理自己的商品、交易、收货地址、评价、投诉的地方,这个地方由于登录之后才能看到,所以风格跟外面完全不一样,很长时间都没有优化过,样子丑,用户操作也不方便,如果一个人有很多商品,上下架需要一个一个的操作,非常麻烦(想想那些卖书的)。这时候一个重要人物登场了,承志(现在的蘑菇街CEO,他让我把他描写的帅一点),他给我们演示了最牛叉的前端交互技术,就是Gmail上那种Ajax的交互方式,可以拖动、可以用右键、可以组合键选择、操作完毕还不刷新页面,管理商品如有神助,帅呆了。我是这个项目的项目经理,一灯是产品经理,我们再拉上万剑和一伙工程师就开搞了。热火朝天的干了三个月,快要完成的时候,老马不知道怎么回事突然出现在我身后,看我操作了一遍新版我的淘宝之后,问我这是不是客户端软件,我说是网页,他抓狂了,说这跟客户端软件一样,链接底下连线都木有,上下架用文件夹表示,我都不知道怎么操作了,卖家肯定也不会玩。

  

 

  老马果然是神一样的人物,他说的应验了,淘宝历史上第一个群体性事件爆发了,试用完新版本的我的淘宝之后,很多卖家愤怒了,说不会玩。一灯就和承志一起商量怎么把页面改得像个网页一点,改了半个月,愤怒依然没有平息。我很无奈地看着这两个人在那里坚持,然后跟老板们商量怎么办。后来我们用了一个很挫的方法给自己一个台阶,到论坛上让大家投票要不要使用新版我的淘宝,投票结果是一半以上的反对。于是这么十来个人做了3个月的系统被杀掉了。这让我非常沮丧,但最痛苦的还不是这个,我们下线之后,另外一拨卖家不满了,说这么好的功能怎么没有了?啊~~~你们怎么不早点站出来,亲?这个产品带给我们的是新技术(Ajax)的尝试,还有就是新技术对用户操作习惯的改变,一定要慎之又慎。另外还有一点没有总结好的教训,就是应对群体事件的时候,我们手足无措,在后来【招财进宝】和淘宝商城出现群体性事件的时候,我发现悲剧在重演。

  说到【招财进宝】,这个是最悲剧的产品。到2006年五一的时候,一个划时代的项目启动了(我苦逼的连续失去了两个五一节,前面一个是2005年做支付宝系统)。财神说要用最好的项目阵容,我被选中了,这一下子让我觉得我能划分到最好的员工之类,在【我的淘宝】这个产品中严重受伤的心又痊愈了。这是一个商品P4P的系统,就是按成交付费。我们认为已经有很多卖家有钱了,但淘宝上这么多的商品,他们很难被找到,卖家愿意花钱让商品排在前面。我们允许卖家购买广告位,把他的商品按一定算法给个排名(类似于百度的竞价排名,但不仅仅看他出了多少钱,还有信用、成交量、被收藏数量等等,这个算法搞的巨复杂)。这是一个多么牛叉的盈利模式啊!

  这个系统进行的很顺利,但发布的时候,更大的群体性事件出来了,买家们质疑:你们不是承诺3年不收费么?收广告费不是收费么?后来我们的竞争对手又推波助澜,公关公司和圈子里各路大侠上蹿下跳,甚至同行搞了个“一键搬家”的功能来收纳我们的会员。一时之间,舆论哗然,各种矛头都指了过来。为了收场,我们又一次在论坛里面让用户投票决定产品是否下线,同【我的淘宝】一样,以悲剧收场。也如同【我的淘宝】一样,下线后,一拨尝到甜头的卖家说,这么好的功能怎么没有了?(直到后来yahoo中国合并过来之后,开发了淘宝直通车,才以类似的产品形态满足了这部分需求)

  虽然招财进宝失败了,但这个项目中对技术的探索更加深入,这里面用到了用户行为追踪、Ajax等。其中有一个技术的细节非常经典,淘宝商品详情页面每天的流量在10亿以上,里面的内容都是放在缓存里的,做招财进宝的时候,我们要给卖家显示他的商品被浏览的次数(见下图),这个数字必须实时更新,而用缓存的话一般都是异步更新的。于是商品表里面增加了这样一个字段,每增加一个PV这个字段就要更新一次。发布上去一个小时数据库就挂掉了,撑不住这么高的update。数据库撑不住怎么办?一般的缓存策略是不支持实时更新的,这时候多隆大神想了个办法,在apache上面写了一个模块,这个数字根本不经过下层的web容器(只经过apache)就写入一个集中式的缓存区了,这个缓存区的数据再异步更新到数据库。这就是我前面提到的,我们整个商品详情的页面都在缓存中了,把缓存用到了极致。

  

 

  (这个图真不是广告,亲)

  那么接下来,我们就说说缓存的技术吧。

  淘宝在很早就开始使用缓存的技术了,在2004年的时候,我们使用一个叫做ESI(Edge Side Includes)的缓存。在决定采用ESI之前,多隆试用了很多java的cache,但都比较重,后来用了oracle web cache,也经常挂掉,oracle web cache也支持ESI,多隆由此发现了ESI这个好东东。ESI是一种数据缓冲/缓存服务器,它提供将Web网页的部分(这里指页面的片段)进行缓冲/缓存的技术及服务。由Oracle公司和Akamai Technologies公司制定规格,Akamai公司提供对应的信息传送的服务。以往的数据缓冲服务器和信息传送服务以“页”为单位制作,复制到数据缓冲服务器中,处理静态页面很有效。但在面对动态内容的时候,就很难得到高效率。在ESI中是部分的缓冲网页,使用基于XML的标记语言,指定想要缓冲的页面部分。由此,页面内分为动态地变更的部分和静态的不变更的部分,只将静态的部分有效地发送到服务器中。淘宝网的数据虽然大部分都是动态产生的,但页面中的静态片段也有很多,例如页面的头、尾,商品详情页面的卖家信息等(如下图右侧),这些最早都是从ESI缓存中读取的。

  

 

  ESI解决了页面端静态片段的缓存,聪明的读者可能马上就想到了,在后端的那些数据能不能使用缓存?显然也是可以的,而且是必须的。例如一个大卖家的商品和店铺,一天的浏览量可能是几百万,一个小卖家的可能只有几个,那这个大卖家的用户信息要是每次都去数据库里面取,显然不划算,要是把这个信息放在内存里面,每次都从内存里取,性能要好很多。这种应用场景,就是memcached这种Key-Value缓存的用武之地。只可惜在淘宝急需要memcached的时候,它还没有崭露头角(它2003.6出现的,但近几年才火爆起来,当时没发现它)。我们的架构师多隆大神再一次出手了,他写了一个缓存系统,叫TBstore,这是一个分布式的基于Berkeley DB的cache系统,推出之后在Alibaba集团内部使用非常广泛,特别是对于淘宝,tbstore上应用了ESI(就是上面说过的那个ESI)、checkcode(验证码)、description(前文说过的商品详情)、story(心情故事,商品信息里面的一个大字段,长度仅次于商品详情)、用户信息等等内容。

  TBstore的分布式算法实现:根据保存的key,对key进行hash算法,取得hash值,再对hash值与总Cache服务器数据取模。然后根据取模后的值,找到服务器列表中下标为此值Cache服务器。由java client api封装实现,应用无需关心;这点和memecached的实现方案完全一致。

  TBstore有一个优点,这也是它的弱点,它的存储是基于Berkeley DB的,而Berkeley DB在数据量超过内存的时候,就要往磁盘上写数据了,所以说它是可以做持久化存储的。但是一旦往磁盘写数据,作为缓存的性能就大幅度下降。

  这时又有一个项目,推动了淘宝在缓存方面的技术提升。在2007年,我们把淘宝的用户信息独立出来,形成一个中心系统UIC(user information center),因为淘宝所有的功能都要依赖于用户信息,所以这个模块必须单独拿出来,不然以后系统无法扩展了。把UIC拿出来以后,应用系统访问UIC,UIC访问数据库取得用户信息,粗粗算一下,每天要取几十亿的用户信息,直接查询数据库的话,显然数据库要崩溃的,这里必须要用缓存。于是多隆为UIC专门写了一个缓存系统,取名叫做tdbm。tdbm抛弃了Berkeley DB的持久功能,数据全部存放在内存中。到2009年,多隆又参考了memcached的内存结构,改进了tdbm的集群分布方式,在内存利用率和吞吐量方面又做了大幅提升,推出了tdbm2.0系统。

  由于tdbm和TBstore的数据接口和用途都很相似,开发团队把二者合并,推出了淘宝自创的KV缓存系统——tair。tair包括缓存和持久化两种存储功能。tair 作为一个分布式系统,是由一个中心控制节点和一系列的服务节点组成。我们称中心控制节点为config server,服务节点是data server。config server 负责管理所有的data server,维护data server的状态信息。data server 对外提供各种数据服务,并以心跳的形式将自身状况汇报给config server。 config server是控制点,而且是单点,目前采用一主一备的形式来保证其可靠性。所有的 data server 地位都是等价的。tair的架构图如下所示:

  

 

  部署结构图是这个样子的:

  

 

  目前,tair支撑了淘宝几乎所有系统的缓存信息。Tair已开源,地址code.taobao.org。

  在创造了TFS和tair之后,整个系统的架构可以如下所示:

  

 

  在这个时候搜索引擎iSearch也进行了一次升级,之前的搜索引擎是把数据分到多台机器上,但是每份数据只有一份,现在是每份数据变成多份,整个系统从一个单行的部署变成了矩阵。能够支撑更大的访问量,并且做到很高的可用性。

换链神器教你如何解决我不想与对方互换链接问题

换链神器解决对方恶意下链投诉方法

换链神器网站列表-数据更新说明

换链神器删除网站说明

换链神器如何暂停网站互换链接?

换链神器使用教程

甜椒刷机助手V3.0QT体验版 2013华丽上线

微软Project 2013专业版RTM60天试用版下载

如何用拍大师进行原创视频创作

拍大师移动版随时随地拍出别样精彩

闹元宵 甜椒刷机助手发布V3.0.5元宵版

2012末日诱惑 再不性感就晚了!

永中Office 2013 个人版正式发布

拍大师之拍我秀秀功能使用教程

Office 2013可支持语言已达106种

好声音在路上,拍大师圆你歌手梦

进军杀毒市场!百度杀毒软件2013正式发布

WPS Office 2012 SP2 专业绿色版

中文触摸recovery,甜椒刷机助手开启刷机新纪元

《OneKey 一键还原》8.0正式版发布

换链神器教你如何解决我不想与对方互换链接问题

换链神器教你如何解决我不想与对方互换链接问题 由于特殊原因,不想与对方进行互换,如何处理? 解决方案: 在互换列表里面选中需要取消互换链接的那行,右击选择,我要下链(输入你的下链理由)点确认即可。 确认后,这条记录将在您的互换...【详细】

http://www.9xz.net/it/ruanjianyingyong/7612.html

换链神器解决对方恶意下链投诉方法

换链神器解决对方恶意下链投诉方法 说明:在没有写明下链理由情况下,直接删除网站链。这种就属于恶意下链。 解决方案:您可以直接互换列表里面选择对方链接一行,右击重新检测一下,如还是提示异常,则人工打开对方网站...【详细】

http://www.9xz.net/it/ruanjianyingyong/7611.html

换链神器网站列表-数据更新说明

换链神器网站列表-数据更新说明 网站列表-数据更新说明 1:系统会每隔24小时对网站所有SEO数据进行自动更新(登陆客户端的情况下)例如:今天早上添加的网站并更新过,到了明天早上八点登陆客户端,系统会自动更新,如果...【详细】

http://www.9xz.net/it/ruanjianyingyong/7610.html

换链神器删除网站说明

换链神器删除网站说明网站列表删除网站说明: 一:删除网站后所有网站之前的数据会保留在服务器(如:换链记录,准时率,被投诉,超时次数等等),再次添加,这些属性会随着网站添加至新的会员属性中。 二:如有误删除...【详细】

http://www.9xz.net/it/ruanjianyingyong/7609.html

换链神器如何暂停网站互换链接?

换链神器如何暂停网站互换链接? 如何暂停网站互换链接? 选择相应的网站,点击“修改”,选择“暂停网站”即可。暂停网站后,该网站不会在互换大厅显示。...【详细】

http://www.9xz.net/it/ruanjianyingyong/7608.html

换链神器使用教程

换链神器使用教程 使用教程第一步登陆“换链神器”进入“网站列表”点击“添加网站”并设置换链匹配条件,添加完网站后系统会在十分钟后自动更新所添加网站SEO数...【详细】

http://www.9xz.net/it/ruanjianyingyong/7607.html

甜椒刷机助手V3.0QT体验版 2013华丽上线

甜椒刷机助手V3.0QT体验版 2013华丽上线   向安卓用户的新年献礼!享受与众不同的刷机体验!   2013新年伊始,甜椒刷机助手为答谢广大安卓手机用户对甜椒的支持与信赖,倾情推了甜椒刷机助手V3...【详细】

http://www.9xz.net/it/ruanjianyingyong/1356.html

微软Project 2013专业版RTM60天试用版下载

微软Project 2013专业版RTM60天试用版下载   微软刚刚放出新近发布的Project Professional 2013的60天试用下载链接。Project 2013专业版将仅适用于Windows 7和Windows 8,并可在32位和64位系统...【详细】

http://www.9xz.net/it/ruanjianyingyong/1355.html

如何用拍大师进行原创视频创作

如何用拍大师进行原创视频创作   之前小编给大家介绍的视频编辑制作软件《拍大师》,小编亲测了该软件的“拍游戏”“拍我秀秀”和“拍照截图”功能...【详细】

http://www.9xz.net/it/ruanjianyingyong/1354.html

拍大师移动版随时随地拍出别样精彩

拍大师移动版随时随地拍出别样精彩   末日过后,2013惊喜连连,PC版拍大师2.0变速版刚刚推出不久,移动版拍大师即闪亮登场,拉开爱拍移动的序幕。本次拍大师移动版先推出了Android系统的安卓...【详细】

http://www.9xz.net/it/ruanjianyingyong/1353.html

闹元宵 甜椒刷机助手发布V3.0.5元宵版

闹元宵 甜椒刷机助手发布V3.0.5元宵版   玩刷机,闹元宵。在一年一度的元宵节到来之际,甜椒发布V3.0.5元宵版,与机友们一起闹元宵。凡使用甜椒刷机助手的用户,每天都能参加幸运大转盘活动,每天...【详细】

http://www.9xz.net/it/ruanjianyingyong/1352.html

2012末日诱惑 再不性感就晚了!

2012末日诱惑 再不性感就晚了! 末日会不会来?玛雅预言会不会真的发生?最近我们都有太多关于末日的想法啦!尽管我们没办法确切的知道到底有没有世界末日,但大多数网友们还是认为不管明天...【详细】

http://www.9xz.net/it/ruanjianyingyong/1351.html

永中Office 2013 个人版正式发布

永中Office 2013 个人版正式发布   无锡永中软件有限公司日前发布了全新的永中Office 2013 个人版,新版本以全新的界面体现清新时尚,即时菜单、智能图表、功能区的压缩和助记符的提供...【详细】

http://www.9xz.net/it/ruanjianyingyong/1350.html

拍大师之拍我秀秀功能使用教程

拍大师之拍我秀秀功能使用教程   之前小编给大家介绍了拍大师这款最简单的视频制作编辑软件,还教大家怎么使用有拍大师的拍游戏视频功能,相信大家看了之后都会使用拍大师的录游戏功...【详细】

http://www.9xz.net/it/ruanjianyingyong/1349.html

Office 2013可支持语言已达106种

  近日,微软在其官方博客上发布消息表示他们已经在Office 2013中加入了对国际用户以及多种语言的支持,其中新加入的语言有位于亚洲地区的印度语、马来...【详细】

http://www.9xz.net/it/ruanjianyingyong/1348.html

好声音在路上,拍大师圆你歌手梦

好声音在路上,拍大师圆你歌手梦   《我是歌手》好声音在路上,拍大师圆你歌手梦!由浙江卫视强力打造的《中国好声音》热度仍没褪去,又一个叫做《我是歌手》的音乐对决综艺秀火了起来,各...【详细】

http://www.9xz.net/it/ruanjianyingyong/1347.html

进军杀毒市场!百度杀毒软件2013正式发布

进军杀毒市场!百度杀毒软件2013正式发布   2012年,百度曾面向泰国市场推出了电脑优化工具Baidu PC Faster,现在,百度终于亮出了大招,正式推出了百度杀毒软件2013(Baidu Antivirus 2013),不过...【详细】

http://www.9xz.net/it/ruanjianyingyong/1346.html

WPS Office 2012 SP2 专业绿色版

WPS Office 2012 SP2 专业绿色版   对于WPS Office系列的办公软件,相信大家都不会陌生,它一直以免费且高效收到广大用户喜爱。最新版WPS Office 2012全新的界面选择、全新的首页模板、...【详细】

http://www.9xz.net/it/ruanjianyingyong/1345.html

中文触摸recovery,甜椒刷机助手开启刷机新纪元

中文触摸recovery,甜椒刷机助手开启刷机新纪元   今日是甜椒刷机助手为刷机界打开新纪元的一天,中文触摸recovery模式发布。中文触摸recovery改变了刷机时候的技术编程显示方式,通过图示的方式显示...【详细】

http://www.9xz.net/it/ruanjianyingyong/1344.html

《OneKey 一键还原》8.0正式版发布

《OneKey 一键还原》8.0正式版发布   龙腾摆尾辞旧岁,金蛇起舞闹新春!OneKey一键还原提前携礼给各位朋友拜年,恭祝各位友人在新的一年里:心想事成,万事如意,阖家幸福!   官方下载地址:Onek...【详细】

http://www.9xz.net/it/ruanjianyingyong/1343.html

上一篇:错误的负载均衡配置导致Chrome崩溃

本文地址:软件应用 >> http://www.9xz.net/it/ruanjianyingyong/695.html

下一篇:安全测试机构NSS:Chrome 21为最安全浏览器

  • 打印
推荐阅读
推荐内容
热点内容
推荐安卓应用