网站架构通用方案样本.doc
《网站架构通用方案样本.doc》由会员分享,可在线阅读,更多相关《网站架构通用方案样本.doc(42页珍藏版)》请在咨信网上搜索。
1、网站架构设计方案目 录1设计思路32系统构造33网络规划及性能计算33.1网络架构33.2网络架构阐明43.2.1采用双防火墙双互换机做网络冗余,保障平台服务43.2.2采用硬件设备负载均衡器,实现网络流量负载均衡43.3系统测算43.3.1系统解决能力规定43.3.2业务解决能力规定43.3.3系统话务模型43.4配备核算53.4.1数据库服务器性能核算53.4.2WEB服务器集群性能核算53.4.3WEB服务器集群内存性能核算53.4.4网络带宽54性能模仿测试及性能推算64.1测试环境64.2测试成果84.2.11个客户端模仿不同线和并发祈求成果84.2.210个客户端祈求84.3成果分
2、析94.4依照测试成果推算94.5设备清单114.5.1硬件设备配备清单114.5.2设备技术规格124.6平台扩容建议121 网站性能瓶颈分析网站性能影响因素诸多,下面重要从如下4个方面进行分析阐明:1) 网络负载a) 公网负载b) 内网负载2) WEB应用服务器性能a) CPUb) 存储,I/O访问c) 内存d) 并发TCP/IP连接数3) 数据库服务器性能a) 数据库参数配备b) 服务器性能(CPU、内存、存储)c) 数据构造合理性4) 不同WEB应用解决方式而对不同性能瓶颈a) 对于静态网站:静态HTML页面严格地由原则HTML标示语言构成,并不需要服务器端即时运算生成。这意味着,对一
3、种静态HTML文档发出访问祈求后,服务器端只是简朴地将该文档传播到客户端。从服务器运营那个时间片来看,这个传播过程仅仅占用了很小CPU资源。对于静态HTML访问瓶颈为:网络带宽、磁盘I/O以及cache(高速缓冲存储器)。b) 对于动态页面由于服务器解析动态页面必要在其传播到客户端前就通过服务器来进行解释,这样就会给应用服务器添加额外性能消耗,如果进一步要访问数据库,则会增长数据库服务器性能消耗,则动态页面尚有额外瓶颈:应用服务器性能,数据库服务器性能。2 系统架构设计2.1 总体思路为提高网站高并发性能,提高开发效率及运营效率,重要按如下几种思路进行规划设计:2.1.1 负载均衡1) 四层互
4、换负载均衡:采用负载均衡器来实现硬件级四层互换负载均衡,或采用LVS来实现软件四层互换负载均衡。2) 通过第三方软件来实现负载均衡,同步实现页面祈求缓存。通过Nginx实现反向代理服务器集群,同步搭建squid集群以作为静态页面和图片缓存。3) 通过web服务器配备来实现负载均衡即通过apache或是Nginx 将客户祈求均衡分给tomcat1,tomcat2.去解决。2.1.2 WEB应用开发架构思路1) 应用开发实现MVC架构三层架构进行web应用开发2) 页面尽量静态化以减少动态数据访问,如果是资讯类网站可以考虑采用第三方开源CMS系统来生成静态内容页面。3) 采用Oscache实现页面
5、缓存,采用Memcached实现数据缓存4) 采用独立图片服务器集群来实现图片资源存储及WEB祈求2.1.3 数据存储设计思路1) 数据库拆分,把生产数据库和查询数据库分离,对生产数据库采用RAC实现数据库集群。2) 采用高效网络文献共享方略,采用图片服务器来实现页面图片存储。2.1.4 不同网络顾客访问考虑1) 通过引入CDN来解决不同网络服务商接入速度问题,普通只能解决静态页面访问问题。2) 在不同运营商机房布置服务器,通过镜像技术来实现不同网络服务商接入速度问题。2.2 总体架构2.2.1 网站系统分层架构2.2.2 网站物理架构2.2.3 网站开发架构2.2.4 网络拓扑构造备注:1)
6、 采用双防火墙双互换机做网络冗余,保障平台服务采用双防火墙告知接通2线路互联网接入,设备之间采用VRRP合同,在任何一种防火墙、互联网发生故障后均可自动将流量切换到另一端,保证网站正运营,设备或网络恢复后,自动恢复。采用双千兆互换机分别接在2台防火墙上,当某台设备或者网络链路发生故障后,好设备自动接管已坏设备工作,不影响网站整体运营,依照业务及真实服务器数量,互换机可以随时增长。2) 采用硬件设备负载均衡器,实现网络流量负载均衡使用硬件设备负载均衡器,将网络流量均衡分担到WEB服务器集群各节点服务器,保障平台服务器资源均衡使用。3) 采用代理服务器,实现软件级网络负载均衡。4) 数据库服务器分
7、离成生产数据库集群和查询数据库集群,实现生产读写与后台查询记录进行分离,同步生产数据库采用rac技术进行2.3 架构涉及技术详解2.3.1 负载均衡1. 基于DNS负载均衡-一种域名绑定各种IPDNS负载均衡技术是最早负载均衡解决方案,它是通过DNS服务中随机名字解析来实现,在DNS服务器中,可觉得各种不同地址配备同一种名字,而最后查询这个名字客户机将在解析这个名字时得到其中一种地址。因而,对于同一种名字,不同客户机会得到不同地址,它们也就访问不同地址上Web 服务器,从而达到负载均衡目。这种技术长处是,实现简朴、实行容易、成本低、合用于大多数TCP/IP应用;但是,其缺陷也非常明显,一方面这
8、种方案不是真正意义上负载均衡,DNS 服务器将Http祈求平均地分派到后台Web服务器上,而不考虑每个Web服务器当前负载状况;如果后台Web服务器配备和解决能力不同,最慢 Web服务器将成为系统瓶颈,解决能力强服务器不能充分发挥作用;另一方面未考虑容错,如果后台某台Web服务器浮现故障,DNS服务器依然会把DNS 祈求分派到这台故障服务器上,导致不能响应客户端。最后一点是致命,有也许导致相称一某些客户不能享有Web服务,并且由于DNS缓存因素,所导致后果要持续相称长一段时间(普通DNS刷新周期约为24小时)。因此在国外最新建设中心Web站点方案中,已经很少采用这种方案了。2. 通过硬件四层互
9、换实现负载均衡在硬件四层互换产品领域,有某些知名产品可以选取,例如Alteon、F5等,这些产品很昂贵,但是物有所值,可以提供非常先进性能和很灵活管理能力。Yahoo中华人民共和国当时接近台服务器使用了三四台Alteon就搞定了3. 通过软件四层互换实现负载均衡软件四层互换咱们可以使用Linux上惯用LVS来解决,LVS就是Linux Virtual Server,她提供了基于心跳线heartbeat实时劫难应对解决方案,提高系统鲁棒性,同步可供了灵活虚拟VIP配备和管理功能,可以同步满足各种应用需求,这对于分布式系统来说必不可少。一种典型使用负载均衡方略就是,在软件或者硬件四层互换基本上搭建
10、squid集群,这种思路在诸多大型网站涉及搜索引擎上被采用,这样架构低成本、高性能尚有很强扩张性。4. 通过反向代理服务器实现负载均衡反向代理服务器又称为 WEB 加速服务器,它位于 WEB 服务器前端,充当WEB服务器内容缓存器,反向代理服务器是针对 WEB 服务器设立,后台 WEB 服务器对互联网顾客是透明,顾客只能看到反向代理服务器地址,不清晰后台 WEB 服务器是如何组织架构。当互联网顾客祈求 WEB 服务时,DNS 将祈求域名解析为反向代理服务器 IP 地址,这样 URL 祈求将被发送到反向代理服务器,由反向代理服务器负责解决顾客祈求与应答、与后台 WEB 服务器交互。运用反向代理服
11、务器减轻了后台 WEB 服务器负载,提高了访问速度,同步避免了因顾客直接与 WEB 服务器通信带来安全隐患。当前有许多反向代理软件,比较有名有 Nginx 和 Squid 。Nginx 是由 Igor Sysoev 为俄罗斯访问量第二 Rambler.ru 站点开发,是一种高性能 HTTP 和反向代理服务器,也是一种 IMAP/POP3/SMTP 代理服务器。Squid是由美国政府大力资助一项研究筹划,其目为解决网络带宽局限性问题,支持HTTP,HTTPS,FTP 等各种合同,是当前 Unix 系统上使用、最多功能也最完整一套软体。1) Squid Squid 是一种开源软件,运用它反向代理技
12、术可以提高网站系统访问速度,下面将重点简介 Squid 反向代理实现原理和在提高网站性能方面应用。Squid反向代理服务器位于本地 WEB 服务器和 Internet 之间 ,组织架构如下图:客户端祈求访问 WEB 服务时,DNS 将访问域名解析为 Squid 反向代理服务器 IP 地址,这样客户端 URL 祈求将被发送到反向代理服务器。如果 Squid 反向代理服务器中缓存了该祈求资源,则将该祈求资源直接返回给客户端,否则反向代理服务器将向后台 WEB 服务器祈求资源,然后将祈求应答返回给客户端,同步也将该应答缓存在本地,供下一种祈求者使用。Squid 反向代理普通只缓存可缓冲数据(例如 h
13、tml 网页和图片等),而某些 CGI 脚本程序或者 ASP、JSP 之类动态程序默认不缓存。它依照从 WEB 服务器返回 HTTP 头标记来缓冲静态页面,有四个最重要 HTTP 头标记: Last-Modified:告诉反向代理页面什么时间被修改 Expires:告诉反向代理页面什么时间应当从缓冲区中删除 Cache-Control:告诉反向代理页面与否应当被缓冲 Pragma:用来包括实现特定指令,最惯用是 Pragma:no-cache 注:DNS 轮询机制将某一种域名解析为 各种IP地址。2) NginxNginx (“engine x”) 是俄罗斯人Igor Sysoev(塞索耶夫)
14、编写一款高性能 HTTP 和反向代理服务器。Nginx 已经在俄罗斯最大门户网站 Rambler Media(.ru)上运营了4年时间,同步俄罗斯超过20%虚拟主机平台采用Nginx作为反向代理服务器。在国内,已有新浪博客、新浪播客、搜狐通行证、网易新闻、网易博客、金山逍遥网、金山爱词霸、校内网、YUPOO相册、豆瓣、迅雷看看等多家网站、频道使用 Nginx 服务器。Nginx 特点如下:1) 工作在OSI模型第7层(应用层)2) 高并发连接官方测试可以支撑5万并发连接,在实际生产环境中跑到23万并发连接数。 3) 内存消耗少在3万并发连接下,启动10个Nginx 进程才消耗150M内存(15
15、M*10=150M)。 4) 配备文献非常简朴风格跟程序同样通俗易懂。 5) 成本低廉Nginx为开源软件,可以免费使用。而购买F5 BIG-IP、NetScaler等硬件负载均衡互换机则需要十多万至几十万人民币。 6) 支持Rewrite重写规则可以依照域名、URL不同,将 HTTP 祈求分到不同后端服务器群组。 7) 内置健康检查功能如果 Nginx Proxy 后端某台 Web 服务器宕机了,不会影响前端访问。 8) 节约带宽支持 GZIP 压缩,可以添加浏览器本地缓存 Header 头。 9) 稳定性高用于反向代理,宕机概率微乎其微。 3) Nginx+squid页面缓存来实现反向代理
16、负载均衡通过Nginx反向代理和squid缓存实现动静分离架构图如下所示:5. Apache +tomcat集群实现负载均衡。使用 apache和各种tomcat 配备一种可以应用web网站,用Apache进行分流,把祈求按照权重以及当时负荷分tomcat1,tomcat2.去解决,要达到如下规定:1) Apache 做为HttpServer ,通过mod_jk连接器连接各种 tomcat 应用实例,并进行负载均衡。2) 同步还要配备session复制,也就是说其中任何一种tomcat添加session,是要同步复制到其他tomcat, 集群内tomcat均有相似session,并为系统(涉及
17、 Apache 和 tomcat)设定 Session 超时时间。2.3.2 缓存1. 系统架构方面缓存1) Squid缓存架构方面使用Squid进行缓存。注:SQUID使用了LM算法,LM就是页面Header里时间(Date)和Last-Modified时间差。Date普通是Squid从背面取页面时间,Last-Modified 普通是页面生成时间。2) Nginx缓存功能Nginx从0.7.48版本开始,支持了类似Squid缓存功能;缓存把URL及有关组合当作Key,用md5编码哈希后保存;NginxWeb缓存服务只能为指定URL或状态码设立过期时间,不支持类似SquidPURGE指令,手
18、动清除指定缓存页面;采用MMAP实现,设立缓存区大小不能超过物理内存+SWEB值3) 基于memcached缓存nginx对memcached有所支持,但是功能并不是特别之强,性能上还是非常之先进。location /mem/ if ( $uri /mem/(0-9A-Za-z_*)$ ) set $memcached_key $1; memcached_pass 192.168.1.2:11211; expires 70;这个配备会将。Nginx当前没有写入memcached任何机制,因此要往memcached里写入数据得用后台动态语言完毕,可以运用404定向到后端去写入数据。Nginx老式
19、缓存缺陷也是它和squid等缓存软件不同之特色,因此也可看作其长处。在生产应用中它常惯用作和squid搭档,squid对于带?链接往往无法阻挡,而nginx能将其访问拦住,例如::/nginx会非常诚实地将链接形式保存到文献系统中,这样对于一种链接,可以很以便地查阅它在缓存机器上缓存状态和内容,也可以很以便地和别文献管理器如rsync等配合使用,它完完全全就是一种文献系统构造。2. 应用程序方面缓存1) OSCacheOSCache由OpenSymphony设计,它是一种开创性JSP定制标记应用,提供了在既有JSP页面之内实现迅速内存缓冲功能,OSCache是个一种广泛采用高性能J2EE缓存框
20、架,OSCache能用于任何Java应用程序普通缓存解决方案。OSCache有如下特点:缓存任何对象,你可以不受限制缓存某些jsp页面或HTTP祈求,任何java对象都可以缓存。拥有全面API-OSCache API给你全面程序来控制所有OSCache特性。永久缓存-缓存能随意写入硬盘,因而容许昂贵创立(expensive-to-create)数据来保持缓存,甚至能让应用重启。支持集群-集群缓存数据能被单个进行参数配备,不需要修改代码。缓存记录过期-你可以有最大限度控制缓存对象过期,涉及可插入式刷新方略(如果默认性能不需要时)。OSCache是当前运用最广缓存方案,JBoss,Hibernat
21、e,Spring等都对其有支持。OSCache特点:1) 缓存任何对象:你可以不受限制缓存某些jsp页面或HTTP祈求,任何java对象都可以缓存。 2) 拥有全面API:OSCache API容许你通过编程方式来控制所有OSCache特性。 3) 永久缓存:缓存能被配备写入硬盘,因而容许在应用服务器多次生命周期间缓存创立开销昂贵数据。 4) 支持集群:集群缓存数据能被单个进行参数配备,不需要修改代码。 5) 缓存过期:你可以有最大限度控制缓存对象过期,涉及可插入式刷新方略(如果默认性能不能满足需要时)。2) Memcachedmemcached是高性能分布式内存缓存服务器。普通使用目是,通过
22、缓存数据库查询成果,减少数据库访问次数,以提高动态Web应用速度、提高可扩展性。Memcached是以Key/Value形式单个对象缓存。3) 自主开发内存数据缓存服务a) 独立进程方式缓存服务对于某些惯用动态数据通过开发程序服务缓存在内存中,提供应其她子系统调用,如下面数据就可以通过这样方式进行缓存。1) 顾客基本信息及状态信息缓冲2) 列表缓存,就像论坛里帖子列表3) 记录条数缓存,例如一种论坛板块里有多少个帖子,这样才以便实现分页。4) 复杂一点group,sum,count查询,例如积分分类排名b) 集成在WEB应用中内存缓存在web应用中对于热点功能,考虑使用完全装载到内存,保证绝对
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 网站 架构 通用 方案 样本
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【二***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【二***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。