java类似淘宝京东商城

淘宝技术发展(Java时代:脱胎换骨)
接上一篇:
我的师父黄裳@岳旭强曾经说过,“好的架构图充满美感”,一个架构好不好,从审美的角度就能看得出来。后来我看了很多系统的架构,发现这个言论基本成立。那么反观淘宝前面的两个版本的架构,你看哪个比较美?
显然第一个比较好看,后面那个显得头重脚轻,这也注定了它不是一个稳定的版本,只存活了不到半年的时间。2004年初,SQL Relay的问题解决不了,数据库必须要用Oracle,那从哪里动刀?只有换开发语言了。换什么语言好呢?Java。Java是当时最成熟的网站开发语 言,它有比较良好的企业开发框架,被世界上主流的大规模网站普遍采用,另外有Java开发经验的人才也比较多,后续维护成本会比较低。
到2004年上半年,淘宝网已经运行了一年的时间,这一年积累了大量的用户,也快速的开发了很多功能,当时这个网站已经很庞大了,而且新的需求还在源源不 断的过来。把一个庞大的网站的开发语言换掉,无异于脱胎换骨,在换的过程中还不能拖慢业务的发展,这无异于边换边跑,对时间和技术能力的要求都非常高。做 这样的手术,需要请第一流的专家来主刀。现在再考一下读者,如果你在这个创业团队里面,请什么样的人来做这事?我们的答案是请Sun的人。没错,就是创造 Java语言的那家公司,世界上没有比他们更懂Java的了。除此之外,还有一个不为人知的原因,……(此处和谐掉200字,完整版见aliway)
这帮Sun的工程师的确很强大,在笔者2004年底来淘宝的时候,他们还在,有幸跟他们共事了几个月。现在摆在他们面前的问题是用什么办法把一个庞大的网 站从PHP语言迁移到Java?而且要求在迁移的过程中,不停止服务,原来系统的bugfix和功能改进不受影响。亲,你要是架构师,你怎么做?有人的答 案是写一个翻译器,如同把中文翻译成英文一样,自动翻译。我只能说你这个想法太超前了,换个说法就是“too simple, sometimes naive”。当时没有,现在也没有人能做到。他们的大致方案是给业务分模块,一个模块一个模块的替换。如用户模块,老的 继续维护,不添加新功能,新的功能先在新的模块上开发,跟老的共用一个数据库,开发完毕之后放到不同的应用集群上,另 开个域名,同时替换老的功能,替换一个把老的模块上的功能关闭一个,逐渐的把用户引导到 ,等所有功能都替换完毕之后,关闭。后来很长时间里面都是在用member1这 样奇怪的域名,两年后有另外一家互联网公司开始做电子商务了,我们发现他们的域名也叫、……
说了开发模式,再说说用到的Java MVC框架,当时的struts1.x是用的比较多的框架,但是用过webwork和struts2的同学可能知道,struts1.x在多人协作方面有 很多致命的弱点,由于没有一个轻量框架作为基础,因此很难扩展,这样架构师对于基础功能和全局功能的控制就很难做到。而阿里巴巴的18个创始人之中,有个 架构师,在Jakarta Turbine的基础上,做了很多扩展,打造了一个阿里巴巴自己用的MVC框架WebX (
),这个框架易于扩展,方便组件化开发,它的页面模板支持JSP和velocity等、持久层支持ibatis和hibernate等、控制层可以用 EJB和Spring(Spring是后来才有的)。项目组选择了这个强大的框架,这个框架如果当时开源了,也许就没有webwork和struts2什 么事了。另外,当时Sun在全世界大力推广他们的EJB,虽然淘宝的架构师认为这个东东用不到,但他们还是极力坚持。在经历了很多次的技术讨论、争论和争 吵之后,这个系统的架构就变成了下图的样子:
Java应用服务器是Weblogic,MVC框架是WebX、控制层用了EJB、持久层是ibatis,另外为了缓解数据库的压力,商品查询和店铺查询放在搜索引擎上面。这个架构图是不是好看了一点了,亲?
这帮Sun的工程师开发完淘宝的网站之后,又做了一个很牛的网站,叫“支付宝”。
其实在任何时候,开发语言本身都不是系统的瓶颈,业务带来的压力更多的是压到了数据和存储上。上面一篇也说到,MySQL撑不住了之后换 Oracle,Oracle的存储一开始在本机上,后来在NAS上,NAS撑不住了用EMC的SAN存储,再然后Oracle的RAC撑不住了,数据的存 储方面就不得不考虑使用小型机了。在2004年的夏天,DBA七公、测试工程师郭芙和架构师行癫,踏上了去北京测试小型机的道路。他们带着小型机回来的时 候,我们像欢迎领袖一样的欢迎他们,因为那个是我们最值钱的设备了,价格表上的数字吓死人。小型机买回来之后我们争相合影,然后Oracle就跑在了小型 机上,存储方面从EMC低端cx存储到Sun oem hds高端存储,再到EMC dmx高端存储,一级一级的往上跳。
到现在为止,我们已经用上了IBM的小型机、Oracle的数据库、EMC的存储,这些东西都是很贵的,那些年可以说是花钱如流水啊。有人说过“钱能解决 的问题,就不是问题”,但随着淘宝网的发展,在不久以后,钱已经解决不了我们的问题了。花钱买豪华的配置,也许能支持1亿PV的网站,但淘宝网的发展实在 是太快了,到了10亿怎么办?到了百亿怎么办?在N年以后,我们不得不创造技术,解决这些只有世界顶尖的网站才会遇到的问题。后来我们在开源软件的基础上 进行自主研发,一步一步的把IOE(IBM小型机、Oracle、EMC存储)这几个“神器”都去掉了。这就如同在《西游记》里面,妖怪们拿到神仙的兵器 会非常厉害,连猴子都能够打败,但最牛的神仙是不用这些神器的,他们挥一挥衣袖、翻一下手掌就威力无比。去IOE这一部分会在最后一个章节里面讲,这里先 埋个千里伏笔。
原文出处:
咋没有下一篇 链接了。。。
赶紧 跑到前面去找
这帮Sun的工程师开发完淘宝的网站之后,又做了一个很牛的网站,叫“支付宝”。 sun的工程师开发的?
请你们作网站,马总不是说,他们合伙人作的吧?
  作者:赵超
看来Facebook真的是一帮变态,用PHP + MySQL及各种变态技术承载着10亿的用户访问呀,虽然并发没有那么多…… 但也够惊叹了。。 老外就是不一样, 国人主要还是求稳为上,豆瓣用个Python被那么多人称之为”极端“ 。。
--- 共有 3 条评论 ---
淘宝的PV和豆瓣不是一个量级的
douban不是用python极端, 而是当初一台双核amd跑了500w pv才被称为极端....
拿电商和社交网站比,真是NB。淘宝要比就和eBay比,FaceBook要比就和人人、开心比。
“好的架构图充满美感”我也觉得是基本成立
是阿,原来牛人都在搞女性内内。。。这技术确认诱人。&
--- 共有 4 条评论 ---
噗~~~~屏幕一片红
: 为了搞好女性两条内内,还A裤,B裤呢,要搞读写分离。要知道女性同袍不只两条内内的。
为了搞女性的A库和B库,还要分多库,读写分离,欲罢不能。
此话怎讲?
这个也是很久以前的文章了吧
--- 共有 3 条评论 ---
: /page/132724/
的确,以前我也看过
淘宝的人刚刚写的没多久JAVA开发超完美的多用户商城源码,C2CB2C源码,仿淘宝源码,仿京东源码,仿天猫源码-JAVA源码-程序员分享开发网
&&nbsp&&nbsp
&&nbsp&&nbsp
&&nbsp&&nbsp
您当前位置:
>> (JAVA开发超完美的多用户商城源码,C2CB2C源码,仿淘宝源码,仿京东源码,仿天猫源码)
详细说明 《查看演示,点击下载》
JAVA开发超完美的多用户商城源码,C2CB2C源码,仿淘宝源码,仿京东源码,仿天猫源码
源码下载:您未注册会员,请
开发环境:JAVA spring Velocity Ehcache JPA
编号:SS-5-15
&&nbsp 本站源码仅供学习与参考,不得商业用途!本站2015年1月正式更换域名为,原先叫(诚信源码)手机: &&QQ:
联系我时,请一定说明在北京八边形网看到的,谢谢!
我们公司做好的商城有很多类似淘宝京东的商城,技术很成熟,我们拥有一支经验丰富的技术团队,所提供的服务包括WEB网站建设、移动手机APP开发、高端个性化APP定制开发等,是国内较专业的互联网软件研发团队之一,助力不同类型企业占领移动互联网的制高点。&
&&&&?我们的服务流程是全程由项目经理,产品经理,技术人员服务到底,需求分析-原型设计-UI设计-程序开发-应用测试-运行维护。免费一年的售后服务。&
我们的经典案例有,商城类的(尚品易馆、镜多多等)教育培训类的(中大网校、工程教育、图勒教育考试网等)生活服务类(同城拼车)移动医疗类(康康血压、脑电波)等等&
&&&&&&&&&&&&&&&&&&&因为专业,所以品质卓越&
&&&&&&&&&&&&&&&&&&&因为年轻,所以推陈出新
还有这些北京网络服务信息

我要回帖

 

随机推荐