网站架构资料收集整理

1.种类概况图

766游戏网官网 1

图1.1 系统架构概况图

766游戏网官网 2

图1.2 较为完好的种类架构图

2.连串应用的最紧要技术

下列排行不分先后

2.1前端

JavaScript,html,css,silverlight,flash

Jquery

Javascript类库,用来简化html的操作,事件处理,动画,异步访问,用于web的迅速支付。最新版本是1.7.1,分为开发环境(大小为229k)和生育环境(大小为31k)。特点是轻量,体积小;css包容1-3;跨浏览器。凡客,当当,亚马逊(亚马逊)。

假如从框架角度分级的话,可以有以下分类:

  • 零级,完毕base工作,包蕴扩张原有对象的章程,Ajax通讯部分,相比较短小
  • 顶级,已毕effect工作,包涵扩展常用成效转换函数,如tween、drag、maskLayer、fade等的特效
  • 二级,落成component工作,包蕴对话框、列表、树、日历等的组件
  • 三级,落成application工作,包蕴完整的前端平台,允许用户定义能得以达成自然功用的模块

局地UI控件和费用框架只做零级Prototype.js,和一级jQuery/Mootools;一些完事了三级,如Dojo和EXT。

Kissky

小巧灵活,简洁实用,使用起来令人觉得欢快。Tmall,腾讯。

2.2后端

Php,Perl,asp,ruby,python,.net,java,jsp(java server page)

静态语言:java, .net

动态语言(脚本语言):php, asp, jsp, perl, python, ruby

Php是尽人皆知的脚本语言,即便出现了广大的新语言,可是php仍旧多数网站的首选,据说全世界70%的网站都利用php。LAMP(linux+apache+mysql+php)是经典组合。

ASP是Active Server
Page的缩写,意为“动态服务器页面”。ASP是微软集团支付的代表CGI脚本程序的一种采纳,它可以与数据库和其余程序开展互相,是一种不难、方便的编程工具。ASP的网页文件的格式是。常用来各个动态网站中。

JSP(Java Server Pages)是由Sun
Microsystems集团发起、许多供销社涉足联合创建的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在价值观的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其余操作系统上运行。

Pythonruby是近几年崛起的开源语言,特点是便于上手,能连忙到位原型。同时也是较为成熟脚本语言。Python是豆瓣的机要语言,google,youtube等网站也都在利用。

http://www.python.org/about/quotes/

Twitter的前端主要行使ruby,moto广井佑树和NASA也都选用了ruby。

http://www.ruby-lang.org/en/documentation/success-stories

2.3缓存

Squid cache

开源。

Squid服务器群,把它看成web服务器端的停放cache服务器,缓存相关请求来提升web服务器速度。Squid将大多数静态资源(图片,js,css等)缓存起来,也可以缓存频仍造访的网页,直接回到给访问者,收缩应用服务器的载荷。

memcached

开源。

WikipediaFlickrTwitterYoutube

memcached服务器群,一款分布式缓存产品,很多大型网站在运用;
它可以回复任意八个一连,使用非阻塞的网络IO。由于它的做事机制是在内存中开发一块空间,然后建立一个HashTable,Memcached自管理这一个HashTable。因为一般而言网站应用程序中最费用时间的职责是多少在数据库的查找,而八个用户查询同一的SQL时,数据库压力会叠加,而透过memcached的查询缓存命中,数据直接从memcached内存中取,每便缓存命元帅替换来数据库服务器的三回来回,到达数据库服务器的乞求更少,直接地升高了数据库服务器的属性,从而使应用程序运行得更快。它通过按照内存缓存对象来压缩数据库查询的主意改正网站系统的反响,其最吸引人的一个特色就是扶助分布式安插。

2.4中间件

Java,.net,c,c++

2.5存储

2.5.1关周全据库

Oracle,mysql,mssql,postgreSQL

postgreSQL

关周全据库,拥有15年的野史。免费,开源。可以运行在linux、unix和windows上,帮衬事物、主外键、连接、视图、触发器、存储进程。包罗多量的数据类型,也援救大目的。扶助多种语言,c,c++,java,c#,perl,python,ruby等等。

2.5.2 NoSQL存储

MongoDB,Redis,CouchDB,Cassandra,HBase

NoSQL(not only
sql),不仅仅是SQL。用来弥补关周到据库在一些地点的供不应求。例如:

l 高并发读写。每秒上万次的读写,关周全据库有点困难。

l
海量数据的全速存储和做客。例如:对一张表有2亿数额的表举行读写,作用比较低下。

l 高扩大性。对于数据库的晋级和壮大,扩展节点,往往须要停机和数码迁移。

有一些地点不须要关周密据库,例如:

l 事务一致性。某些场面不要求工作,对于数据的一致性也尚无严谨要求。

l 读写实时性。有些场地不须要实时的读写。

http://baike.baidu.com/view/2677528.htm

Mongodb

文档型nosql,帮衬主从复制。有好多的大公司选取。帮忙多种编程语言。

http://www.mongodb.org/display/DOCS/Production+Deployments

Disney,SAP,Taobao(监控数据),sourceforge,斯柯达点评(用户作为分析,用户、组)。

Redis

键值型nosql,vmware赞助,协理多种编程语言。推特(Twitter),Taobao,新浪今日头条都有应用。

Couchdbcassandrahbase

都是apache旗下的品种。

2.5.3文件系统

商用中间件,自定义文件系统

2.6操作系统

Windows,linux,unix

2.7 Web应用服务器软件

IIS,apache,tomcat,jboss,weblogic(BEA,商用,收费),websphere(IBM,商用,收费),lighttpd,nginx

IIS

微软windows操作系统专用。

Lighttpd

lighttpd,是一个德国人领导的开源软件,其根本的目标是提供一个专程针对高性能网站,安全、快捷、包容性好。lighttpd并且灵活的web
server环境。具有卓殊低的内存费用,cpu占用率低,功能好,以及丰硕的模块等特性。lighttpd是过多OpenSource轻量级的web
server中较为完美的一个。襄助法斯特CGI, CGI, Auth, 输出压缩(output
compress), URL重写, Alias等根本功用,

Nginx

开源

Nginx+php(法斯特(Fast)CGI)+Memcached+Mysql+APC
是当下主流的高性能服务器搭建情势!适合大中型网站,小型站长也足以运用那种重组!

Nginx 当先 Apache 的高性能和平安,使得国内使用 Nginx 作为 Web
服务器的网站也越来越多,其中包涵国内最大的电子地图MapBar、网易博客、微博播客、天涯论坛资讯等门户网站频道,六间房、56.com等视频分享网
站,Discuz!官方论坛、水木社区等闻明论坛,豆瓣、YUPOO相册、海内SNS、迅雷在线等新生Web
2.0网站,更加多的网站都在应用Nginx配置。

2.8 框架

Javascript:Jqueryprototype.jsKisskyextjs

.NET:企业库unityNHibernateSprint.NETibatisMVCMEFPrismlog4net23个开源项目lucene.NET

Java:hibernatespringstrutseasyjflog4j开源项目lucene

Python:djangoflaskbottletornadouliwebweb.py

Ruby:rails

PHP:PEAR

3.主流网站架构演进

3.1第一步:物理分离webserver和数据库

刚开头我们的网站或者搭建在一台服务器上,这么些时候是因为网站有着了一定的表征,吸引了一部分人拜访,逐步你发现系统的下压力越来越高,响应速度越来越慢,而那个时候可比精晓的是数据库和应用相互影响,应用出题目了,数据库也很不难并发问题,而数据库出问题的时候,应用也易于出题目,于是进入了第一步演化阶段:将动用和数据库从情理上分别,变成了两台机器,那一个时候技术上向来不怎么新的渴求,但你发现确实起到成效了,系统又卷土重来到从前的响应速度了,并且支撑住了更高的流量,并且不会因为数据库和选拔形成相互的熏陶。

766游戏网官网 3

图3.1

3.2次之步:增添页面缓存

好景不长,随着访问的人更多,你发觉响应速度又起来变慢了,查找原因,发现是访问数据库的操作太多,导致数据连接竞争可以,所以响应变慢,但数据库连接又不可能开太多,否则数据库机器压力会很高,因此考虑动用缓存机制来减弱数据库连接资源的竞争和对数据库读的压力,那个时候首先可能会选用使用squid等相近的建制来将系统中绝对静态的页面(例如一二日才会有更新的页面)举办缓存(当然,也得以选择将页面静态化的方案),那样程序上能够不做修改,就可见很好的滑坡对webserver的下压力以及减弱数据库连接资源的竞争,OK,于是从头采纳squid来做相对静态的页面的缓存。

766游戏网官网 4

图3.2

3.3第三步:扩展页面片段缓存

追加了squid做缓存后,整种类统的进程确实是擢升了,webserver的下压力也初阶降落了,但随着访问量的加码,发现系统又开端变的多少慢了,在尝到了squid之类的动态缓存带来的益处后,早先想能不可能让今日这么些动态页面里绝对静态的有些也缓存起来呢,因而考虑动用类似ESI之类的页面片段缓存策略,OK,于是开端利用ESI来做动态页面中相对静态的一部分部分的缓存。

766游戏网官网 5

图3.3

3.4第四步:数据缓存

在运用ESI之类的技能重新进步了系统的缓存效果后,系统的压力实在越来越下降了,但一样,随着访问量的加码,系统或者始于变慢,经过查找,可能会意识系统中存在部分再次获取数据新闻的地点,像获取用户新闻等,这几个时候起头考虑是不是可以将那几个多少新闻也缓存起来呢,于是将这一个数量缓存到地点内存,改变完结后,完全符合预期,系统的响应速度又卷土重来了,数据库的下压力也再也下降了成百上千。可以使用的技能有:memcached。

766游戏网官网 6

图3.4

3.5第五步:增加webserver

好景不长,发现随着系统访问量的再一次扩展,webserver机器的下压力在山头期会上涨到比较高,那些时候早先考虑扩张一台webserver,那也是为了同时缓解可用性的题材,防止单台的webserver
down机的话就左顾右盼使用了,在做了那个考虑后,决定扩大一台webserver,扩张一台webserver时,会遇上一些题目,典型的有:

1、怎么样让走访分配到这两台机器上,这么些时候平日会考虑的方案是Apache自带的负荷均衡方案,或LVS那类的软件负载均衡方案;

2、怎么着有限支持状态音讯的一块儿,例如用户session等,那些时候会设想的方案有写入数据库、写入存储、cookie或联合session音信等体制等;

3、如何保持数据缓存新闻的联名,例如之前缓存的用户数量等,那些时候日常会考虑的机制有缓存同步或分布式缓存;

4、如何让上传文件这几个类似的职能继续健康,这几个时候常常会考虑的建制是利用共享文件系统或存储等;

在解决了这几个题材后,终于是把webserver扩张为了两台,系统终于是又上涨到了昔日的进程。

766游戏网官网 7

图3.5

3.6第六步:分库

分享了一段时间的系统访问量高速增加的美满后,发现系统又起来变慢了,本次又是怎么着意况呢,经过查找,发现数据库写入、更新的这个操作的一部分数据库连接的资源竞争万分凶猛,导致了系统变慢,那下肿么办吧,此时可选的方案有数据库集群和分库策略,集群方面像微微数据库扶助的并不是很好,由此分库会变成相比普遍的国策,分库也就代表要对原有程序开展改动,一通修改完成分库后,不错,目标达到了,系统復苏甚至速度比原先还快了。

766游戏网官网 8

图3.6

3.7第七步:分表、DAL和分布式缓存

乘势系统的随处运行,数据量开首大幅度拉长,那些时候发现分库后查询如故会略微慢,于是根据分库的合计起始做分表的办事,当然,那不可幸免的会须求对程序开展一些改动,也许在那么些时候就会发觉使用自己要关怀分库分表的平整等,如故稍微复杂的,于是萌生能否增添一个通用的框架来兑现分库分表的多寡访问,那个在ebay的架构中对应的就是DAL,这些衍生和变化的长河相对而言必要成本较长的岁月,当然,也有可能这一个通用的框架会等到分表做完后才起来做,同时,在这一个等级或者会意识往日的缓存同步方案出现问题,因为数据量太大,导致现在不太可能将缓存存在本地,然后一并的点子,须要采用分布式缓存方案了,于是,又是一通考察和折磨,终于是将大气的数目缓存转移到分布式缓存上了。

766游戏网官网 9

图3.7

3.8第八步:扩张更加多的webserver

在做完分库分表那个干活儿后,数据库上的下压力已经降到比较低了,又开头过着每一天望着访问量暴增的幸福生活了,突然有一天,发现系统的拜会又起来有变慢的样子了,那个时候首先查看数据库,压力一切正常,之后查看webserver,发现apache阻塞了广大的请求,而应用服务器对每个请求也是相比快的,看来是伸手数太高以致急需排队等候,响应速度变慢,这还好办,一般的话,那个时候也会有些钱了,于是添加一些webserver服务器,在那一个添加webserver服务器的进度,有可能会并发三种挑战:

1、Apache的软负载或LVS软负载等不能负担巨大的web访问量(请求连接数、网络流量等)的调度了,这些时候如若经费允许的话,会使用的方案是购置硬件负载,例如F5、Netsclar、Athelon之类的,如经费不允许的话,会选择的方案是将利用从逻辑上做一定的分类,然后分散到分化的软负载集群中;

2、原有的一对情景音信同步、文件共享等方案可能会冒出瓶颈,必要展开改正,也许那个时候会依据情形编写符合网站业务须要的分布式文件系统等;

在做完那个干活儿后,早先进入一个近乎完美的无限伸缩的一时,当网站流量扩展时,应对的解决方案就是时时刻刻的添加webserver。

766游戏网官网 10

图3.8

3.9第九步:数据读写分离和廉价存储方案

意料之外有一天,发现那个完美的一时也要截至了,数据库的惊恐不已的梦又一遍面世在前头了,由于添加的webserver太多了,导致数据库连接的资源如故不够用,而以此时候又曾经分库分表了,起头分析数据库的下压力情况,可能会意识数据库的读写比很高,那一个时候常见会想到数据读写分离的方案,当然,这几个方案要贯彻并不便于,此外,可能会意识部分数量存储在数据库上有些浪费,或者说过于占用数据库资源,由此在这一个阶段可能会形成的架构衍生和变化是落成数据读写分离,同时编制一些尤为廉价的蕴藏方案,例如BigTable这种。

766游戏网官网 11

图3.9

3.10第十步:进入大型分布式应用时代和优惠服务器群梦想时代

通过地方这个漫长而惨痛的长河,终于是再度迎来了周详的一代,不断的加码webserver就足以支撑越来越高的访问量了,对于大型网站而言,人气的机要毋庸置疑,随着人气的一发高,各样各种的意义需求也起首暴发性的增强,那个时候突然意识,原来安插在webserver上的非凡web应用已经更加巨大了,当多少个组织都起来对其进展改动时,可正是十分的不便民,复用性也非常不好,基本是各种集体都做了或多或少重复的事体,而且布置和护卫也是一对一的劳动,因为庞大的运用包在N台机器上复制、启动都亟需用度千千万万的时间,出题目标时候也不是很好查,别的一个更不好的风貌是很有可能会并发某个应用上的bug就招致了全站都不可用,还有其余的像调优不好操作(因为机器上安顿的利用什么都要做,根本就不能展开针对性的调优)等要素,根据那样的分析,起首痛下决心,将系统基于职务举办拆分,于是一个重型的分布式应用就诞生了,平时,那个手续必要消耗一定长的岁月,因为会遇见很多的挑衅:

1、拆成分布式后须要提供一个高性能、稳定的通信框架,并且须要协助多种不一样的通信和长途调用情势;

2、将一个宏大的拔取拆分要求费用很长的时间,要求展开业务的整治和连串看重关系的支配等;

3、如何运维(器重管理、运行景况管理、错误追踪、调优、监控和报警等)好这么些庞然大物的分布式应用。

透过这一步,差不离系统的架构进入相对稳定的级差,同时也能起始利用大量的廉价机器来协理着伟大的访问量和数据量,结合那套架构以及这么很多次衍变进度吸取的经验来选择任何种种种种的不二法门来支持着进一步高的访问量。

766游戏网官网 12

图3.10

4.分析

趁着平台做大做强,很可能会走向定制操作系统,定制数据库,甚至定制硬件,定制其余可以定制的事物如此一条路。

在服务器、架构、组件等技能选取方面,首要有八个样子:1挑选成熟商用。2挑选开源+自主研发。下边就那八个方向逐一开展简易分析。

1商用的得失

l 商用的助益之一是干练,稳定,搭建快速。

l
商用的弱点之一是费用高,随着服务器的扩充,license的支出上升,费用偏高。

l 商用的产品是通用化的,紧缺定制性,无法满意个性要求。

2开源+自主研发的利弊

l 源码开放,可控性好,出现问题,可以从底层解决,伸张性好。

l 长时间时间、人力投入大,初期见效慢;长时间出现大,见效分明。

l 可以在软件和硬件的多少个层面不断优化,丰盛满意个性化需求。

商用和开源+自主研发各有利害,各有互补性,要根据使用景况的两样来进展分选,也可以按照要求般配使用。

5.总结

眼前大型网站的主流是LAMP(linux+apache+mysql+php),或者是在那基础之上的恢宏,例如扩张缓存,伸张中间件(中间件大多使用java,c,c++或者.NET编写,或者采购成熟的中间件产品,IBM就有那些成熟的中间件产品);又或者替换其中的一点部分,例如前端选用python,ruby,lua这几个新近流行的脚本语言,数据存储部分使用nosql或者文件系统。这样的精选有历史由来、开销原因、业务原因,也有在网站发展未来要求满意新的急需而衍生出来解决特定问题的原由。

也有中期使用微软系(windows+.NET+MSSQL)来构建网站的,在背后又依据需求投入其他系统的的电商,例如:京东,当当,凡客等。也有一向选取微软系的网站,国外的微软官网stackoverflow,还有曾经辉煌的myspace

实则,现在的发展趋势是:混合系列,而非单一的系统。就是说技术系统不是单一的,也不是稳定不变的,而是依据作业以及网站的腾飞,以及技巧的升华,选取适宜的技巧解决适龄的题材。

架构的变动不是一件麻烦事,对工作和网站的向上都很首要,不可以几天依旧一半个月就变更一下,也不容许有事没事变更一下,应该是在显要的时候,有亟待的时候,或者依据布置定期升级。

我觉着有一种格局得以支持我们举办精选。就是按照我们的目标,或者说预估的业务量,预估的成交量,预估的用户量,划分多少个阳台发展里程碑,或者是岁月段。然后按照平台进步的里程碑来规划技术选型的里程碑。考虑范围的还要,还须求考虑工作的品种,产生的数目标花色,对这几个多少的拍卖必要等元素。

可以先定多少个里程碑,这么些里程碑的光阴,可以依照前边的事务预估来裁定。先按照第一个里程碑要满意的事情须要,来抉择当前的技巧架构,并且开展仓储空间规划。然后针对第一个到第两个里程碑的过火,举办预留规划,有限支撑未来的乌海久安过渡。或者只是预留伸张的余地,那上头有时候有些难度,不过相应尽可能做。

在其次个里程碑此前的1-2个月举行第四个里程碑技术架构的啄磨和筹划,因为那时候相比较原来的第一个里程碑的事体猜测可能会有改变,或者技术上有了新的选项,都得以即时考虑到本次的筹划中来。以此类推后边的里程碑技术架构变更。

还有就是出其不意事态,因为总会有一对预期之外的景况时有暴发,有的是业务发展的需求,有的是被动的急需。针对这一个出人意料事态,也会举办架构的晋级。

参考文献

QCon北京2012大会

http://www.qconbeijing.com/

五洲软件开发大会

QCon是由InfoQ主办的中外超级技术盛会,每年在伦敦(London)、巴黎、东京(Tokyo)、纽约、圣保罗(Paul)、卢布尔雅那、布宜诺斯艾利斯进行。自二〇〇七年七月份第一次进行以来,已经
有包含传统创建、金融、电信、互联网、航空航天等世界的近万名架构师、项目老板、团队首长和高级开发人士到场过QCon大会。

秉承“促进软件开发领域知识与更新的扩散”原则,QCon各项议题专为中高端技术人员设计,内容来自实践并面向社区。演讲嘉宾按照各关键和热点话题,分享技术方向和特等实践;作为主办方,InfoQ努力为参会者提供卓越的读书和调换条件。

1.淘宝

LAMP, .NET, Nginx, windows, linux, Oracle, MySQL, Lua, NoSQL

Tmall网,是一个在线商品数量突破一亿,日均成交额超越两亿元人民币,注册用户接近八千万的特大型电子商务网站,是北美洲最大的购物网站。

· 日均 IP [周平均]
134700000

· 日均 PV [周平均]
2559300000

· 日均 IP [月平均]
137280000

· 日均 PV [月平均]
2608320000

· 日均 IP [七月平均]
130620000

· 日均 PV [十三月平均]
2481780000

Tmall开放低耗服务器设计规范

电子商务网站(Taobao网)的系统架构解析

Taobao开源项目

寄存天猫商城所有的开源项目

揭秘天猫自主研发的文件系统-TFS

眼下,国内自主研发的文件系统可谓凤毛麟角。天猫在这一天地做了有效的探究和实施,天猫商城File
System(TFS)作为天猫内部使用的分布式文件系统,针对海量小文件的人身自由读写访问性能做了奇特优化,承载着Taobao主站所有图片、商品描述等数码存储。

淘宝开源Key/Value结构数据存储系统Tair技术分析

Tair是由Taobao网自主开发的Key/Value结构数据存储系统,在Taobao网有着广大的选拔。您在签到Taobao、查看商品详情页面或者在淘江湖和挚友“捣浆糊”的时候,都在从来或直接地和Tair交互。

走进Tmall开源平台

Node.js得到集团开发者亲睐

LinkedIn和天猫商城部分机能接纳了Node.js

Taobao的可伸缩高性能互联网架构揭秘

Java在天猫的选用(天猫商城的架构变迁)

HBase技术在天猫中的应用

冯大辉谈数据库架构

天猫架构师的年份展望

何崚谈阿里巴巴(阿里巴巴)前端性能优化最佳实践

电子商务网站(天猫商城网)的系统架构解析

2.腾讯

Php, asp

· 日均 IP [周平均]
222000000

· 日均 PV [周平均]
1776000000

· 日均 IP [月平均]
218640000

· 日均 PV [月平均]
1749120000

· 日均 IP [3月平均]
213930000

· 日均 PV [五月平均]
1711440000

谈腾讯开放平台关键技术

3.又拍网

Erlang, Python, PHP, Redis

又拍网架构中的音信/任务系统

3.赶集网

Php, MySQL

4.乐乎天涯论坛

php

唐福林谈Redis应用实践

唐福林是博客园今日头条开放平台资深工程师,近期承受t.cn短链、用户关系、计数器等底部服务。他曾负责过包蕴新浪信箱全文检索在内的两个基于Lucene的
垂直搜索引擎开发,以及知乎爱问和乐乎播客的运维,对承载大数据量、高并发的互联网基础设备建设有添加的经历。他在QCon格拉斯哥2011大会的开放平台专
题做了名为《微博搜狐开放平博洛尼亚的Redis实践》的讲座,并和参会者做了火爆的商讨。会后,InfoQ中文站对唐福林做了采访。

博客园新浪的注册用户数在3个月内从1.4亿增高到2亿,用户之间的关怀,粉丝关系越来越要再高出一个数量级,而且读取量还在以更快的快慢进步。网易微博开放平台的接口中还有很多的数字,这么些数字的读写量巨大,而且对一致性,实时性都要求很高。传统的
mysql+memcache
方案在那些场景下越发不能,于是博客园新浪开放平台大胆启用了 NoSql
领域的新贵 Redis 。

5.Facebook

LAMP

非死不可系统架构

脸谱架构设计中文版

Facebook架构学习

6.Twitter

Lamp,ruby

推特使用的半数以上工具都是开源的。其结构是用Rails作前端,C,Scala和Java组成中间的业务层,使用MySQL存储数据。所有的事物都保留在RAM里,而数据库只是作为备份。Rails前端处理呈现,缓存协会,DB查询以及一头插入。这一前端主要由几局地客户服务粘合而成,大部分是C写的:MySQL客户端,Memcached客户端,一个JSON端,以及其余。

中间件使用了Memcached,Varnish用于页面缓存,一个用Scala写成的MQ,Kestrel和一个Comet服务器也正在设计之中,该服务器也是用Scala写成,当客户端想要跟踪多量的tweet时它就能派上用场。

推特(Twitter)是当做一个“内容管理平台而非音讯管理平台”早先的,因而从一初阶依据聚合读取的模型改变到近日的拥有用户都亟需立异最新tweet的音信模型,须求恒河沙数的优化。这一改成主要在于多少个方面:缓存,MQ以及Memcached客户端。

架构的浮动

Twitter架构(Cache篇)

7.eBay

lamp

可伸缩性的特级实践

eBay的架构特点

闲聊电商网站的架构与克拉玛依

8.凡客

.net,c,c++

· 日均 IP [周平均]
6990000

· 日均 PV [周平均]
62910000

· 日均 IP [月平均]
7650000

· 日均 PV [月平均]
68850000

· 日均 IP [十一月平均]
7983000

· 日均 PV [八月平均]
71847000

栾义来:凡客历程分享——应对局面和错综复杂挑战

架构经理的新年展望

9.一号店

Java, jsp, linux, mysql, postgresql, oracle

· 日均 IP [周平均]
2610000

· 日均 PV [周平均]
23490000

· 日均 IP [月平均]
2793000

· 日均 PV [月平均]
25137000

· 日均 IP [6月平均]
2583000

· 日均 PV [2月平均]
20664000

1号店电商系统形成之路

10.银泰网

.net,jsp,java

11.当当

.net,php,jquery

CDN

CDN的全称是Content Delivery
Network,即情节分发网络。其基本思路是尽可能避开互联网上有可能影响多少传输速度和平安的瓶颈和环节,使内容传输的更快、更平稳。通过在网络随地放置节点服务器所结合的在现有的互联网基础之上的一层智能虚拟网络,CDN系统可以实时地按照网络流量和各节点的总是、负载处境以及到用户的相距和响应
时间等综合音讯将用户的哀求重新导向离用户近日的劳动节点上。其目标是使用户可就地得到所需内容,解决
Internet网络拥堵的光景,提升用户访问网站的响应速度。

http://baike.baidu.com/view/21895.htm

NoSQL开篇——为何要使用NoSQL

说说技术型创业团队的技巧选取

续——冯大辉谈技术性创业团队的技术选型

互联网技术平台迁移论文

分享自己的大型Java多用户商城系统开发的心得和辛劳

电子商务软件及软件服务提供商论坛

基于J2EE架构的电子商务网站实例分析

中小型电子商务网站架构-从业计算

1、大型网站架构设计图

766游戏网官网 13

2、PlentyOfFish 网站架构

http://www.dbanotes.net/arch/plentyoffish_arch.html

当先 3000 万的日点击率

对于动态出站(outbound)的多少开展削减,这费用了30%的CPU能力,但节省了带宽资源

负载均衡选取 ServerIron (Conf
Refer)(ServerIron
使用简便,而且成效比 NLB 更拉长)

一共三台 SQL
Server,一台作为主库,其它两台只读数据库支撑查询,大气力优化 DB

3、YouTube 的架构

http://www.dbanotes.net/opensource/youtube_web_arch.html

一定大的数额流量——每日有10亿次下载以及6,5000次上传

大部分代码都是 Python 开发的

Web 服务器有部分是 Apache, 用 法斯特(Fast)CGI 情势。对于视频内容则用
Lighttpd766游戏网官网, 。(国内的豆子用的Lighttpd)

启用了单身的服务器群组来顶住录像压力,并且针对 Cache 和 OS
做了部分优化,访问量大的视频放在CDN上,自己的只需承担小部分访问压力

用 MySQL 存储元数据–用户音信、视频信息什么的。

作业规模的分区(在用户名字或者 ID 上做小说,应用程序控制查找体制)

4、Yahoo!社区架设

http://www.dbanotes.net/arch/yahoo_arch.html

5、Amazon 的 Dynamo 架构

http://www.dbanotes.net/techmemo/amazon_dynamo.html

 

766游戏网官网 14

6、财帮子(caibangzi.com)网站架构

http://www.dbanotes.net/arch/caibangzi_web_arch.html

7、说说大型高并发高负载网站的连串架构(更新)

http://www.toplee.com/blog/71.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注