大型网站系统架构分析

大型网站系统架构分析

ID:15525258

大小:129.50 KB

页数:5页

时间:2018-08-03

大型网站系统架构分析_第1页
大型网站系统架构分析_第2页
大型网站系统架构分析_第3页
大型网站系统架构分析_第4页
大型网站系统架构分析_第5页
资源描述:

《大型网站系统架构分析》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、大型网站系统架构分析千万级的注册用户,千万级的帖子,nTB级的附件,还有巨大的日访问量,大型网站采用什么系统架构保证性能和稳定性?首先讨论一下大型网站需要注意和考虑的问题。·数据库海量数据处理:负载量不大的情况下select、delete和update是响应很迅速的,最多加几个索引就可以搞定,但千万级的注册用户和一个设计不好的多对多关系将带来非常严重的性能问题。另外在高UPDATE的情况下,更新一个聚焦索引的时间基本上是不可忍受的。索引和更新是一对天生的冤家。·高并发死锁:平时我们感觉不到,但数据库死锁在高并发的情况下的出现的概率是非常高的。·文件存储的问题:大型网站有海量图片数据

2、、视频数据、文件数据等等,他们如何存储并被有效索引?高并发的情况下IO的瓶颈问题会迅速显现。也许用RAID和专用存贮服务器能解决眼下的问题,但是还有个问题就是各地的访问问题,也许我们的服务器在北京,可能在云南或者海南的访问速度如何解决?如果做分布式,那么我们的文件索引以及架构该如何规划。接下来讨论大型网站的底层系统架构,来有效的解决上述问题。毋庸置疑,对于规模稍大的网站来说,其背后必然是一个服务器集群来提供网站服务,例如,2004年eBay的服务器有2400台,估计现在更多。当然,数据库也必然要和应用服务分开,有单独的数据库服务器集群。对于像淘宝网这样规模的网站而言,就是应用也分成

3、很多组。下面,就从服务器操作系统与Web服务器、数据库、服务器集群与负载均衡、缓存、独立的图片服务器、其它等几个方面来分析大型网站的系统架构。服务器操作系统与Web服务器最底层首先是操作系统。好的操作系统能提高好的性能、稳定性和安全性,而这些对大型网站的性能、安全性和稳定性都是至关重要的。·淘宝网(阿里巴巴):Linux操作系统+Web服务器:Apache·新浪:FreeBSD+Web服务器:Apache·Yahoo:FreeBSD+Web服务器:自己的·Google:部分Linux+Web服务器:自己的·百度:Linux+Web服务器:Apache·网易:Linux+Web服务器

4、:Apache·eBay:WindowsServer2003/8(大量)+Web服务器:MicrosoftIIS·MySpace:WindowsServer2003/8+Web服务器:MicrosoftIIS由此可见,开源操作系统做Web应用是首选已经是一个既定事实。在开源操作系统中Linux和FreeBSD差不太多,很难说哪个一定比另外一个要优秀很多、能够全面的超越对手,应该是各有所长。但熟悉Linux的技术人员更多些,利于系统管理、优化等,所以Linux使用更广泛。而WindowsServer和IIS虽然有的网站使用,但不开源,而且需要购买微软的一系列应用产品,限制了其使用。总

5、之,开源操作系统,尤其是Linux做Web应用是首选已经是一个既定事实。常用的系统架构是:·Linux+Apache+PHP+MySQL·Linux+Apache+Java(WebSphere)+Oracle·WindowsServer2003/2008+IIS+C#/ASP.NET+数据库数据库因为是千万人同时访问的网站,所以一般是有很多个数据库同时工作的,说明白一点就是数据库集群和并发控制,数据分布到地理位置不同的数据中心,以免发生断电事故。主流的数据库有Sun的是MySQL和Oracle。Oracle是一款优秀的、广泛采用的商业数据库管理软件。有很强大的功能和安全性,可以处理

6、相对海量的数据。而MySQL是一款非常优秀的开源数据库管理软件,非常适合用多台PCServer组成多点的存储节点阵列(这里我所指的不是MySQL自身提供的集群功能),每单位的数据存储成本也非常的低廉。用多台PCServer安装MySQL组成一个存储节点阵列,通过MySQL自身的Replication或者应用自身的处理,可以很好的保证容错(允许部分节点失效),保证应用的健壮性和可靠性。可以这么说,在关系数据库管理系统的选择上,可以考虑应用本身的情况来决定。MySQL数据库服务器的master-slave模式,利用数据库服务器在主从服务器间进行同步,应用只把数据写到主服务器,而读数据时

7、则根据负载选择一台从服务器或者主服务器来读取,将数据按不同策略划分到不同的服务器(组)上,分散数据库压力。服务器集群与负载均衡服务器群集中每个服务结点运行一个所需服务器程序的独立拷贝,而网络负载均衡则将工作负载在这些主机间进行分配。负载均衡建立在现有网络结构之上,它提供了一种廉价有效的方法扩展服务器带宽和增加吞吐量,加强网络数据处理能力,提高网络的灵活性和可用性。它主要完成以下任务:解决网络拥塞问题,服务就近提供,实现地理位置无关性;为用户提供更好的访问质量;提高服务

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

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

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