门户网站架构设计专项方案.doc
《门户网站架构设计专项方案.doc》由会员分享,可在线阅读,更多相关《门户网站架构设计专项方案.doc(42页珍藏版)》请在咨信网上搜索。
1、前台门户网站架构设计方案北京宽连十方数字技术-7 目 录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、2.210个用户端请求84.3结果分析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 总体思绪为提升网站高并发性能,提升开发效率及运行效率,关键按以下多个思绪进行计划设
4、计:2.1.1 负载均衡1) 四层交换负载均衡:采取负载均衡器来实现硬件级四层交换负载均衡,或采取LVS来实现软件四层交换负载均衡。2) 经过第三方软件来实现负载均衡,同时实现页面请求缓存。经过Nginx实现反向代理服务器集群,同时搭建squid集群以作为静态页面和图片缓存。3) 经过web服务器配置来实现负载均衡即经过apache或是Nginx 将用户请求均衡分给tomcat1,tomcat2.去处理。2.1.2 WEB应用开发架构思绪1) 应用开发实现MVC架构三层架构进行web应用开发2) 页面尽可能静态化以降低动态数据访问,假如是资讯类网站能够考虑采取第三方开源CMS系统来生成静态内容
5、页面。3) 采取Oscache实现页面缓存,采取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
6、网站开发架构2.2.4 网络拓扑结构备注:1) 采取双防火墙双交换机做网络冗余,保障平台服务采取双防火墙通知接通2线路互联网接入,设备之间采取VRRP协议,在任何一个防火墙、互联网发生故障后均可自动将流量切换到另一端,确保网站正运行,设备或网络恢复后,自动恢复。采取双千兆交换机分别接在2台防火墙上,当某台设备或网络链路发生故障后,好设备自动接管已坏设备工作,不影响网站整体运行,依据业务及真实服务器数量,交换机能够随时增加。2) 采取硬件设备负载均衡器,实现网络流量负载均衡使用硬件设备负载均衡器,将网络流量均衡分担到WEB服务器集群各节点服务器,保障平台服务器资源均衡使用。3) 采取代理服务器,
7、实现软件级网络负载均衡。4) 数据库服务器分离成生产数据库集群和查询数据库集群,实现生产读写和后台查询统计进行分离,同时生产数据库采取rac技术进行2.3 架构包含技术详解2.3.1 负载均衡1. 基于DNS负载均衡-一个域名绑定多个IPDNS负载均衡技术是最早负载均衡处理方案,它是经过DNS服务中随机名字解析来实现,在DNS服务器中,能够为多个不一样地址配置同一个名字,而最终查询这个名字用户机将在解析这个名字时得到其中一个地址。所以,对于同一个名字,不一样用户机会得到不一样地址,它们也就访问不一样地址上Web 服务器,从而达成负载均衡目标。这种技术优点是,实现简单、实施轻易、成本低、适适用于
8、大多数TCP/IP应用;不过,其缺点也很显著,首先这种方案不是真正意义上负载均衡,DNS 服务器将Http请求平均地分配到后台Web服务器上,而不考虑每个Web服务器目前负载情况;假如后台Web服务器配置和处理能力不一样,最慢 Web服务器将成为系统瓶颈,处理能力强服务器不能充足发挥作用;其次未考虑容错,假如后台某台Web服务器出现故障,DNS服务器仍然会把DNS 请求分配到这台故障服务器上,造成不能响应用户端。最终一点是致命,有可能造成相当一部分用户不能享受Web服务,而且因为DNS缓存原因,所造成后果要连续相当长一段时间(通常DNS刷新周期约为二十四小时)。所以在国外最新建设中心Web站点
9、方案中,已经极少采取这种方案了。2. 经过硬件四层交换实现负载均衡在硬件四层交换产品领域,有部分著名产品能够选择,比如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 请求将被发送到反向代理服务器,由反向代理服务器负责处理用户请求和应答、和后台
11、 WEB 服务器交互。利用反向代理服务器减轻了后台 WEB 服务器负载,提升了访问速度,同时避免了因用户直接和 WEB 服务器通信带来安全隐患。现在有很多反向代理软件,比较有名有 Nginx 和 Squid 。Nginx 是由 Igor Sysoev 为俄罗斯访问量第二 Rambler.ru 站点开发,是一个高性能 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。Squid是由美国政府大力资助一项研究计划,其目标为处理网络带宽不足问题,支持HTTP,HTTPS,FTP 等多个协议,是现在 Unix 系统上使用、最多功效也最完整一套软体。1) Squid Squi
12、d 是一个开源软件,利用它反向代理技术能够提升网站系统访问速度,下面将关键介绍 Squid 反向代理实现原理和在提升网站性能方面应用。Squid反向代理服务器在当地 WEB 服务器和 Internet 之间 , 组织架构以下图:用户端请求访问 WEB 服务时,DNS 将访问域名解析为 Squid 反向代理服务器 IP 地址,这么用户端 URL 请求将被发送到反向代理服务器。假如 Squid 反向代理服务器中缓存了该请求资源,则将该请求资源直接返回给用户端,不然反向代理服务器将向后台 WEB 服务器请求资源,然后将请求应答返回给用户端,同时也将该应答缓存在当地,供下一个请求者使用。Squid 反
13、向代理通常只缓存可缓冲数据(比如 html 网页和图片等),而部分 CGI 脚本程序或 ASP、JSP 之类动态程序默认不缓存。它依据从 WEB 服务器返回 HTTP 头标识来缓冲静态页面, 有四个最关键 HTTP 头标识: Last-Modified: 告诉反向代理页面什么时间被修改 Expires: 告诉反向代理页面什么时间应该从缓冲区中删除 Cache-Control: 告诉反向代理页面是否应该被缓冲 Pragma: 用来包含实现特定指令,最常见是 Pragma:no-cache 注:DNS 轮询机制将某一个域名解析为 多个IP地址。2) NginxNginx (“engine x”)
14、是俄罗斯人Igor Sysoev(塞索耶夫)编写一款高性能 HTTP 和反向代理服务器。Nginx 已经在俄罗斯最大门户网站 Rambler Media(.ru)上运行了4年时间,同时俄罗斯超出20%虚拟主机平台采取Nginx作为反向代理服务器。在中国,已经有新浪博客、新浪播客、搜狐通行证、网易新闻、网易博客、金山逍遥网、金山爱词霸、校内网、YUPOO相册、豆瓣、迅雷看看等多家网站、频道使用 Nginx 服务器。Nginx 特点以下:1) 工作在OSI模型第7层(应用层)2) 高并发连接官方测试能够支撑5万并发连接,在实际生产环境中跑到23万并发连接数。 3) 内存消耗少在3万并发连接下,开启
15、10个Nginx 进程才消耗150M内存(15M*10=150M)。 4) 配置文件很简单风格跟程序一样通俗易懂。 5) 成本低廉Nginx为开源软件,能够无偿使用。而购置F5 BIG-IP、NetScaler等硬件负载均衡交换机则需要十多万至几十万人民币。 6) 支持Rewrite重写规则能够依据域名、URL不一样,将 HTTP 请求分到不一样后端服务器群组。 7) 内置健康检验功效假如 Nginx Proxy 后端某台 Web 服务器宕机了,不会影响前端访问。 8) 节省带宽支持 GZIP 压缩,能够添加浏览器当地缓存 Header 头。 9) 稳定性高用于反向代理,宕机概率微乎其微。 3
16、) Nginx+squid页面缓存来实现反向代理负载均衡经过Nginx反向代理和squid缓存实现动静分离架构图以下所表示:5. Apache +tomcat集群实现负载均衡。使用 apache和多个tomcat 配置一个能够应用web网站,用Apache进行分流,把请求根据权重和当初负荷分tomcat1,tomcat2.去处理,要达成以下要求:1) Apache 做为HttpServer ,经过mod_jk连接器连接多个 tomcat 应用实例,并进行负载均衡。2) 同时还要配置session复制,也就是说其中任何一个tomcat添加session,是要同时复制到其它tomcat, 集群内t
17、omcat全部有相同session,并为系统(包含 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或状态码设
18、置过期时间,不支持类似SquidPURGE指令,手动清除指定缓存页面;采取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里写入数据得用后台动态语言完成,能
19、够利用404定向到后端去写入数据。Nginx传统缓存缺点也是它和squid等缓存软件不一样之特色,所以也可看作其优点。在生产应用中它常常见作和squid搭档,squid对于带?链接往往无法阻挡,而nginx能将其访问拦住,比如::/nginx会很老实地将链接形式保留到文件系统中,这么对于一个链接,能够很方便地查阅它在缓存机器上缓存状态和内容,也能够很方便地和别文件管理器如rsync等配合使用,它完完全全就是一个文件系统结构。2. 应用程序方面缓存1) OSCacheOSCache由OpenSymphony设计,它是一个开创性JSP定制标识应用,提供了在现有JSP页面之内实现快速内存缓冲功效,O
20、SCache是个一个广泛采取高性能J2EE缓存框架,OSCache能用于任何Java应用程序一般缓存处理方案。OSCache有以下特点:缓存任何对象,你能够不受限制缓存部分jsp页面或HTTP请求,任何java对象全部能够缓存。拥有全方面API-OSCache API给你全方面程序来控制全部OSCache特征。永久缓存-缓存能随意写入硬盘,所以许可昂贵创建(expensive-to-create)数据来保持缓存,甚至能让应用重启。支持集群-集群缓存数据能被单个进行参数配置,不需要修改代码。缓存统计过期-你能够有最大程度控制缓存对象过期,包含可插入式刷新策略(假如默认性能不需要时)。OSCach
21、e是目前利用最广缓存方案,JBoss,Hibernate,Spring等全部对其有支持。OSCache特点:1) 缓存任何对象:你能够不受限制缓存部分jsp页面或HTTP请求,任何java对象全部能够缓存。 2) 拥有全方面API:OSCache API许可你经过编程方法来控制全部OSCache特征。 3) 永久缓存:缓存能被配置写入硬盘,所以许可在应用服务器数次生命周期间缓存创建开销昂贵数据。 4) 支持集群:集群缓存数据能被单个进行参数配置,不需要修改代码。 5) 缓存过期:你能够有最大程度控制缓存对象过期,包含可插入式刷新策略(假如默认性能不能满足需要时)。2) Memcachedmem
22、cached是高性能分布式内存缓存服务器。通常使用目标是,经过缓存数据库查询结果,降低数据库访问次数,以提升动态Web应用速度、 提升可扩展性。Memcached是以Key/Value形式单个对象缓存。3) 自主开发内存数据缓存服务a) 独立进程方法缓存服务对于部分常见动态数据经过开发程序服务缓存在内存中,提供给其它子系统调用,以下面数据就能够经过这么方法进行缓存。1) 用户基础信息及状态信息缓冲2) 列表缓存,就像论坛里帖子列表3) 统计条数缓存,比如一个论坛板块里有多少个帖子,这么才方便实现分页。4) 复杂一点group,sum,count查询,比如积分分类排名b) 集成在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。