大型网站架构系列全整理.docx

大型网站架构系列全整理.docx

ID:28379023

大小:75.80 KB

页数:15页

时间:2018-12-09

大型网站架构系列全整理.docx_第1页
大型网站架构系列全整理.docx_第2页
大型网站架构系列全整理.docx_第3页
大型网站架构系列全整理.docx_第4页
大型网站架构系列全整理.docx_第5页
资源描述:

《大型网站架构系列全整理.docx》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、大型网站架构系列全整理(来源:疯狂代码)http://tech.techweb.com.cn/thread-439370-1-1.html之一,前言,不得不考虑的问题-K9i!W8H4@1G#t;O,w.L!w7]6K"C"v4T-s前言:这两天机器坏了,正在送修中,写个系列的大型网站架构的文章,希望对有志在互联网做出一番事业的站长朋友们一些帮助。-c,n:]/J-P*t5o!]/^'H/{注意:这里的大型网站架构只包括高互动性高交互性的数据型大型网站,基于大家众所周知的原因,我们就不谈新闻类和一些依靠HTML静态化就可以实现

2、的架构了,我们以高负载高数据交换高数据流动性的网站为例,比如海内,开心网等类似的web2.0系列架构。我们这里不讨论是PHP还是JSP或者.NET环境,我们从架构的方面去看问题,实现语言方面并不是问题,语言的优势在于实现而不是好坏,不论你选择任何语言,架构都是必须要面对的。'j$g*v9z!p8M.U  R+B0s!c6k+N"S#f27?文入正题:%o9y&`+{/M${'h#J)~首先讨论一下大型网站需要注意和考虑的问题&X'H8l+A;M6T4P4c%vA.,E:q'g8g!l4^(g海量数据的处理。)B+m2P5y8

3、H1O8K*I5F9x)G众所周知,对于一些相对小的站点来说,数据量并不是很大,select和update就可以解决我们面对的问题,本身负载量不是很大,最多再加几个索引就可以搞定。对于大型网站,每天的数据量可能就上百万,如果一个设计不好的多对多关系,在前期是没有任何问题的,但是随着用户的增长,数据量会是几何级的增长的。在这个时候我们对于一个表的select和update的时候(还不说多表联合查询)的成本的非常高的。(S"};h+p'D+o6nB."P7C3i6K.s&i  `;Z数据并发的处理+M6X'?:n6g1X在一些时候

4、,2.0的CTO都有个尚方宝剑,就是缓存。对于缓存,在高并发高处理的时候也是个大问题。在整个应用程序下,缓存是全局共享的,然而在我们进行修改的时候就,如果两个或者多个请求同时对缓存有更新的要求的情况下,应用程序会直接的死掉。这个时候,就需要一个好的数据并发处理策略以及缓存策略。:$S,b.]!q,v.[另外,就是数据库的死锁问题,也许平时我们感觉不到,死锁在高并发的情况下的出现的概率是非常高的,磁盘缓存就是一个大问题。1E6S7g1b0L2D(jC.  K5U&z-x+N7A文件存贮的问题7L#X:a6];x)g$t"c对于

5、一些支持文件上传的2.0的站点,在庆幸硬盘容量越来越大的时候我们更多的应该考虑的是文件应该如何被存储并且被有效的索引。常见的方案是对文件按照日期和类型进行存贮。但是当文件量是海量的数据的情况下,如果一块硬盘存贮了500个G的琐碎文件,那么维护的时候和使用的时候磁盘的Io就是一个巨大的问题,哪怕你的带宽足够,但是你的磁盘也未必响应过来。如果这个时候还涉及上传,磁盘很容易就over了。/t/]"^+?/e也许用raid和专用存贮服务器能解决眼下的问题,但是还有个问题就是各地的访问问题,也许我们的服务器在北京,可能在云南或者新疆的访

6、问速度如何解决?如果做分布式,那么我们的文件索引以及架构该如何规划。-E.?,Q)P.J4"u2,E!Y所以我们不得不承认,文件存贮是个很不容易的问题#h%c'B,u%}1U;d1g/R3d+h*KD.#D!F"f)F1~:Q数据关系的处理%a,Z'V2j"D我们可以很容易的规划出一个符合第三范式的数据库,里面布满了多对多关系,还能用GUID来替换INDENTIFYCOLUMN但是,多对多关系充斥的2.0时代,第三范式是第一个应该被抛弃的。必须有效的把多表联合查询降到最低。8}$d7Y([*o0~'D:G4B,xE.$C1

7、K'a+s/X/Q&e&k9D,R)]1k)k-Z数据索引的问题5X8T-[0E-Z)O"{*s"Z6Q众所周知,索引是提高数据库效率查询的最方面最廉价最容易实现的方案。但是,在高UPDATE的情况下,update和delete付出的成本会高的无法想想,笔者遇到过一个情况,在更新一个聚焦索引的时候需要10分钟来完成,那么对于站点来说,这些基本上是不可忍受的。*g#v$i)Y:z+q%q  a索引和更新是一对天生的冤家,问题A,D,E这些是我们在做架构的时候不得不考虑的问题,并且也可能是花费时间最多的问题,79P#H)U2N#

8、n#M4D6Z,n&KF.2I*M  z)n1H分布式处理;l"@1G,W/o"m7L对于2.0网站由于其高互动性,CDN实现的效果基本上为0,内容是实时更新的,我们常规的处理。为了保证各地的访问速度,我们就需要面对一个绝大的问题,就是如何有效的实现数据同步和更新,实现各地服

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。