从个人网站到淘宝网 仰观Java时代淘宝的技术发展(2)

news/2024/5/12 6:35:07/文章来源:https://blog.csdn.net/thinkscape/article/details/7483858

FROM:

http://developer.51cto.com/art/201204/327050_1.htm



从2003年的一个个人对个人(C2C)的商品交易网站到如今的淘宝网,其实在作为个人网站发展的时间里并不长。那么在这段时间里,淘宝究竟是如何发展的呢?在这篇文章里我们将找到淘宝网的发展历史以及所用到的技术。

AD:

个人网站

2003年4月7日,马云,在杭州,成立了一个神秘的组织。他叫来十位员工,要他们签了一份协议,这份协议要求他们立刻离开阿里巴巴,去做一个神秘的项目。这个项目要求绝对保密,老马戏称“连说梦话被老婆听到都不行,谁要是透漏出去,我将追杀到天涯海角”。这份协议是英文版的,匆忙之间,大多数人根本来不及看懂,但出于对老马的信任,都卷起铺盖离开了阿里巴巴。

他们去了一个神秘的据点——湖畔花园小区的一套未装修的房子里,房子的主人是马云。这伙人刚进去的时候,马云给他们布置了一个任务,就是在最短的时间内做出一个个人对个人(C2C)的商品交易的网站。现在出一个问题考考读者,看你适不适合做淘宝的创业团队。亲,要是让你来做,你怎么做?

在说出这个答案之前,容我先卖个关子,介绍一下这个创业团队的成员:三个开发工程师(虚竹、三丰、多隆)、一个UED(二当家)、三个运营(小宝、阿珂、破天)、一个经理(财神)、还有就是马云和他的秘书。当时对整个项目组来说压力最大的就是时间,怎么在最短的时间内把一个从来就没有的网站从零开始建立起来?了解淘宝历史的人知道淘宝是在2003年5月10日上线的,这之间只有一个月。要是你在这个团队里,你怎么做?我们的答案就是:买一个来。

买一个网站显然比做一个网站要省事一些,但是他们的梦想可不是做一个小网站而已,要做大,就不是随便买个就行的,要有比较低的维护成本,要能够方便的扩展和二次开发。那接下来就是第二个问题:买一个什么样的网站?答案是:轻量一点的,简单一点的,于是买了这样一个架构的网站:LAMP(linux+apache+mySQL+PHP)。这个直到现在还是一个很常用的网站架构模型。这种架构的优点是:无需编译,发布快速,PHP功能强大,能做从页面渲染到数据访问所有的事情,而且用到的技术都是开源的,免费。

当时我们是从一个美国人那里买来的一个网站系统,这个系统的名字叫做PHPAuction(他们的官方网站 http://www.phpauction.net 这个名字很直白,一眼就看出来这个系统是用什么语言做的、是干什么用的),PHPAuction有好几个版本,我们买的是最高版的,功能比较多,而且最重要的是对方提供了源代码。最高版比较贵,花了我们2000美金(貌似现在降价了,只要946美元)。买来之后不是直接就能用的,需要很多本地化的修改,例如页面模板改的漂亮一点,页头页脚加上自己的站点简介等,其中最有技术含量的是对数据库进行了一个修改。原来是从一个数据库进行所有的读写操作,拿过来之后多隆把它给拆分成一个主库、两个从库,读写分离。这么做的好处有几点:存储容量增加了,有了备份,使得安全性增加了,读写分离使得读写效率提升了。这样整个系统的架构就如下图所示:

 

其中pear DB是一个PHP模块,负责数据访问层。另外也用开源的论坛系统PHPBB( http://www.phpbbchina.com )搭建了一个小的论坛社区,虚竹负责机器采购、配置、架设等,三丰和多隆负责编码,他们把交易系统和论坛系统的用户信息打通,给运营人员开发出后台管理(admin系统)的功能,把交易类型从只有拍卖这一种增加为拍卖、一口价、求购商品、海报商品(意思是还没推出的商品,先挂个海报出来)这四种。(PHPAuction只有拍卖的交易,Auction即拍卖的意思。@_行癫在微博中提到:今天eBay所有交易中拍卖交易仍然占了40%,而在中国,此种模式在淘宝几乎从一开始就未能占据优势,如今在主流的交易中几乎可以忽略不计。背后的原因一直令人费解。我大致可以给出其中一种解释,eBay基本在发达国家展开业务,制造业外包后,电子商务的基本群体大多只能表现为零散的个体间交易。)

在经历了另外一些有趣的事情之后(这些有趣的事情包括“淘宝”这个名字的由来,员工花名的由来等等,由于本书主要描述技术方面的故事,对这些有兴趣的可以去网上找),网站开始上线运行了。

在接下来的大半年时间里,这个网站迅速显示出了它的生机。这里有必要提一下当时的市场环境,非典(SARS)的肆虐使得大家都不敢出门,尤其是去商场之类人多的地方。另外在神州大地上最早出现的C2C网站易趣也正忙的不亦乐乎,2002年3月,eBay以3000万美元收购了易趣公司33%的股份,2003年6月以1.5亿美元收购了易趣公司剩余67%的股份。当时淘宝网允许买卖双方留下联系方式,允许同城交易,整个操作过程简单轻松。而eBay为了收取交易佣金,是禁止这么做的,这必然增加了交易过程的难度。而且eBay为了全球统一,把易趣原来的系统替换成了美国eBay的系统,用户体验一下子全变了,操作起来非常麻烦,这等于是把积累的用户拱手送给了淘宝。为了不引起eBay的注意,淘宝网在2003年里一直声称自己是一个“个人网站”。由于这个创业团队强大的市场开拓和运营能力,淘宝网发展的非常迅猛,2003年底就吸引了注册用户XXX,最高每日31万PV,从5月到年底成交额4000万。这没有引起eBay的注意,却引起了阿里巴巴内部很多员工的注意,他们觉得这个网站以后会成为阿里巴巴强劲的对手。甚至有人在内网发帖,忠告管理层要警惕这个刚刚起步的网站,但管理层似乎无动于衷。(这个团队的保密工作做的真好)

在市场和运营的后方,淘宝网的技术团队也在快速的做着系统的改进和创新。这里还有个有趣的故事,eBay和易趣早期都有员工在论坛上响应用户的需求,eBay的论坛用粉红色背景来区分员工的发言,易趣的员工在论坛上昵称都选各种豆豆,例如黄豆豆、蚕豆豆等。淘宝在讨论运营策略的时候提到这个问题,要求所有的员工都去论坛上回答用户的问题。最早回答问题的任务落在小宝头上,那我们用什么名字好呢?“淘淘”?“宝宝”?小宝都不满意,太女性化了。讨论了很久之后,小宝灵光乍现,干脆取个名字叫“小宝”吧,小宝带七个老婆来开店,迎接各位客官,很有故事性。于是很多武侠小说中的人物开始在论坛中行侠仗义,这些昵称下面标志着“淘宝店小二”,他们回答着各种各样的问题,快速响应着用户的各种需求。如果是技术上能解决的,几个人商量一下,马上就开发、测试、发布上线。反过来对比一下,易趣被eBay收购之后,系统更换成了全球通用的版本,响应用户的一个需求需要层层审批,反应速度自然慢了下来。

当时淘宝第一个版本的系统里面已经包含了商品发布、管理、搜索、商品详情、出价购买、评价投诉、我的淘宝这些功能(现在主流程中也是这些模块。在2003年10月增加了一个功能节点:“安全交易”,这个是支付宝的雏形)。随着用户需求和流量的不断增长,系统上面做了很多的日常改进,服务器由最初的一台变成了三台,一台负责发送email、一台负责运行数据库、一台负责运行webApp。过一段时间之后,商品搜索的功能占用数据库资源太大了(用like搜索的,很慢),又从阿里巴巴中文站搬过来他们的搜索引擎iSearch,起初iSearch索引的文件放在硬盘上,随着数据量的增长,又采购了NetApp服务器放置iSearch。

如此快节奏的工作,其实大家都累得不行,有人就提议大家随时随地的锻炼身体,可是外面SARS横行,在一个一百多方的房子里,怎么锻炼呢?高挑美女阿珂提议大家练习提臀操,这个建议遭到男士的一致反对,后来虚竹就教大家练习倒立,这个大家都能接受。于是这个倒立的传统一直延续至今,和花名文化、武侠文化一并传承了下来。

随着访问量和数据量的飞速上涨,问题很快就出来了,第一个问题出现在数据库上。mySQL当时是第4版的,我们用的是默认的存储引擎myisam,这种类型读数据的时候会把表锁住(我们知道Oracle在写数据的时候会有行锁,读数据的时候是没有的),尤其是主库往从库上面写数据的时候,会对主库产生大量的读操作,使得主库性能急剧下降。这样在高访问量的时候,数据库撑不住了。另外当年的mySQL不比如今的mySQL,在数据的容量和安全性方面也有很多先天的不足(和Oracle相比)。(未完)


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_852329.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从个人网站到淘宝网 仰观Java时代淘宝的技术发展(3)

FROM: http://developer.51cto.com/art/201204/327050_2.htm 从2003年的一个个人对个人(C2C)的商品交易网站到如今的淘宝网,其实在作为个人网站发展的时间里并不长。那么在这段时间里,淘宝究竟是如何发展的呢&#x…

从个人网站到淘宝网 仰观Java时代淘宝的技术发展(4)

FROM: http://developer.51cto.com/art/201204/327050_3.htm 从2003年的一个个人对个人(C2C)的商品交易网站到如今的淘宝网,其实在作为个人网站发展的时间里并不长。那么在这段时间里,淘宝究竟是如何发展的呢?在这篇…

从个人网站到淘宝网 仰观Java时代淘宝的技术发展(5)

FROM: http://developer.51cto.com/art/201204/327050_4.htm?1334978897 从2003年的一个个人对个人(C2C)的商品交易网站到如今的淘宝网,其实在作为个人网站发展的时间里并不长。那么在这段时间里,淘宝究竟是如何发展的呢&#…

从个人网站到淘宝网 仰观Java时代淘宝的技术发展(6)

FROM: http://developer.51cto.com/art/201204/327050_5.htm 从2003年的一个个人对个人(C2C)的商品交易网站到如今的淘宝网,其实在作为个人网站发展的时间里并不长。那么在这段时间里,淘宝究竟是如何发展的呢&#x…

爬动漫网站数据_通过这三种动漫爱上数据科学和技术

爬动漫网站数据Yes, it might seem weird to mention anime, data science, and technology in the same breath. But you might be surprised to learn that there’s quite a deep connection across these domains. I am interested in all three (along with reading, list…

网站文件下载代码

效果图&#xff1a; 页面视图代码&#xff1a; <div style"float: right; padding-right: 5px;">Excel模板&#xff1a;Html.ActionLink("下载模版.xls", "GetFile") </div> 控制器代码&#xff1a; //下载模板public FileResult Ge…

【闲趣】CSDN RSS订阅:将你的博客订阅至个人网站

文章目录引言RSS是什么将CSDN博客订阅至我的网站将【知乎每日精选】订阅到我的网站我不是程序员&#xff0c;我怎么订阅RSS订阅地址RSS订阅器RSS实战&#xff1a;Outlook订阅CSDN引言 在翻阅个人文章的时候发现了个不起眼的东西&#xff0c;我好像在别的地方也见过这个标识。 …

英语老师不想让你知道的一些网站

1、练习听力美国国家公共广播电台NPR&#xff1a;http://www.npr.org/特点&#xff1a;标准美式英语。建议&#xff1a;每天花三十分钟左右&#xff0c;反复听英语广播&#xff0c;这是听力过关的必经之路。点击网页中左边“BROWSE TOPICS”下面的“News”选项。选择自己有兴趣…

Java开源建站工具

美国程序员Jon Scott Stevens&#xff0c;公布了他的创业公司所使用的开发工具清单。 他的语言平台是Java&#xff0c;开发项目是一个网站&#xff08;还未上线&#xff09;。所用到的工具都是开源的&#xff0c;可以免费得到。 在目前的创业者之中&#xff0c;用Java作为网站…

如何利用云服务器搭建个人网站

你是否想要搭建一个网站&#xff0c;却苦苦找不到方法&#xff0c;你是否看到别人搭建的网站&#xff0c;自己羡慕不已&#xff0c;今天&#xff0c;就教大家来搭建一个简单的个人网站。 在这里&#xff0c;我采用的是腾讯云服务器搭建的。首先&#xff0c;需要注册腾讯云账号&…

微信域名防屏蔽防封系统,轻松微信中域名网站被屏蔽被封的问题

做微信营销活动&#xff0c;域名没被封过&#xff0c;那你的营销人生肯定是不完整的。如果做到微信域名防封呢&#xff1f;这就要借助一些工具来实现有效的防封措施了。 第一步 你需要有一个微信域名检测接口&#xff0c;自己开发或是购买都可以。 第二步 配置你的程序&#xf…

【Vue项目心得笔记】电商网站的“面包屑”

标题说的“面包屑”是下图所示的小方块&#xff0c;可以方便的筛选用户需要的物品的各种属性。 利用vue设计出这种面包屑需要很多的请求 面包屑包括在主页全部商品分类点击的面包屑&#xff0c;输入关键字产生的面包屑&#xff0c;点击下方品牌产生的面包屑&#xff0c;还有点…

在阿里云服务器上使用Nginx部署https协议的网站

前写过一篇文章是在阿里云服务器上用Apache切换https协议&#xff1a;将博客迁移阿里云并且切换成https解析的过程 这一次&#xff0c;换成使用Nginx来部署&#xff0c;相比之下&#xff0c;比Apache的配置要简单一些 如何申请SSL证书就按下不表了&#xff0c;非常简单&#xf…

安卓如何将edittext获取到数子传到另一个页面处理_白杨SEO:网站聚合页面是什么、好处及怎么做?重复页怎么处理?【收藏】...

前言&#xff1a; 这是白杨SEO公众号原创第 118 篇。为什么想到写这个呢&#xff0c;在上周星期天&#xff08;12.22日&#xff09;白杨SEO年终线下交流沙龙中有嘉宾提到这个聚合页面&#xff0c;看很多新人不太懂&#xff0c;所以这篇就来写写哈~说明下&#xff0c;大家都知道…

jquery set长度_从零做网站开发:基于Flask和JQuery,实现表格管理平台

摘要&#xff1a;本文将为大家带来基于Flask框架和JQuery实现管理平台网站的开发功能。【写在前面】你要开发网站&#xff1f; 嗯。。会Flask吗&#xff1f; 什么东西&#xff0c;没听过。。。会JQuery吗&#xff1f; 是python的库吗 &#xff1f;那你会什么&#xff1f; 我会F…

如何让传统ASP.NET网站在Docker中运行

本文主要描述如何让传统ASP.NET网站在Docker中运行&#xff0c;侧重Docker image 搭建。 使用条件&#xff1a; Docker for windows 用户切换到Windows 容器模式Windows Server 2016 用户 开启 Windows Container 关于Docker for windows&#xff0c;nanoserver,Windows Cont…

Scrapy爬取图片网站——最详细的入门爬虫教程,新手入门干货,不进来看一下?

开始前准备 这次爬虫使用scrapy&#xff0c;所以用到的工具必然是python3.7&#xff0c;scrapy&#xff0c;pycharm这些东西&#xff0c; 目标网站&#xff1a;http://pic.netbian.com 彼岸图网&#xff0c;个人非常喜欢的图片网站&#xff0c;完全公开免费&#xff0c;几乎没…

天猫浏览型应用的CDN静态化架构演变(大型网站架构篇)(转)

转自&#xff1a;http://www.iteye.com/news/28732-CDN-Architecture-Tmall在天猫双11活动中&#xff0c;商品详情、店铺等浏览型系统&#xff0c;通常会承受超出日常数倍甚至数十倍的流量冲击。随着历年来双11流量的大幅增加&#xff0c;每年这些浏览型系统都要面临容量评估、…

大型网站架构演化(转)

《大型网站技术架构》读书笔记&#xff1a;1.1大型网站软件系统的特点与传统企业应用系统相比&#xff0c;大型互联网应用系统有以下特点。高并发&#xff0c;大流量高可用海量数据用户分布广泛&#xff0c;网络情况复杂安全环境恶劣需求快速变更&#xff0c;发布频繁渐进式发展…

高访问量高性能高可扩展性网站架构(概括性理论)(转)

转自&#xff1a;http://www.iteye.com/news/29730 摘要&#xff1a;随着数据暴增&#xff0c;单服务器开始疲于应对海量用户的访问。自本期《问底》&#xff0c;徐汉彬将带大家开启异地跨集群分布式系统打造&#xff0c;本次关注的重点则是架构从单机到分布式集群的转变。 Web…