欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    前台门户网站架构设计方案(我们公司的真实案例)32374.docx

    • 资源ID:68904724       资源大小:2.93MB        全文页数:65页
    • 资源格式: DOCX        下载积分:30金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要30金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    前台门户网站架构设计方案(我们公司的真实案例)32374.docx

    北京宽连十方数字技术有限公司2010-7 目 录1设计思思路32系统结结构33网络规规划及性性能计算算33.1网网络架构构33.2网网络架构构说明43.2.11采用双双防火墙墙双交换换机做网网络冗余余,保障障平台服服务43.2.22采用硬硬件设备备负载均均衡器,实实现网络络流量的的负载均均衡43.3系系统测算算43.3.11系统处处理能力力要求43.3.22业务处处理能力力要求43.3.33系统话话务模型型43.4配配置核算算53.44.1数据库库服务器器性能核核算53.4.22WEBB服务器器集群性性能核算算53.4.33WEBB服务器器集群内内存性能能核算53.44.4网络带带宽54性能模模拟测试试及性能能推算64.1测测试环境境64.2测测试结果果84.2.111个客户户端模拟拟不同线线和并发发请求结结果84.2.2210个客客户端请请求84.3结结果分析析94.4根根据测试试结果推推算94.5设设备清单单114.5.11硬件设设备配置置清单114.5.22设备技技术规格格124.6平平台扩容容的建议议121 网站的性能能瓶颈分分析网站的性能能影响因因素很多多,下面面主要从从如下4个个方面进进行分析析说明:1) 网络负载a) 公网负载b) 内网负载2) WEB应用用服务器器性能a) CPUb) 存储,I/O访问问c) 内存d) 并发TCPP/IPP连接数数3) 数据库服务务器性能能a) 数据库参数数配置b) 服务器性能能(CPPU、内内存、存存储)c) 数据结构的的合理性性4) 不同WEBB应用的的处理方方式而对对不同的的性能瓶瓶颈a) 对于静态的的网站:静态的HTTML页页面严格格地由标标准的HHTMLL标示语语言构成成,并不不需要服服务器端端即时运运算生成成。这意意味着,对对一个静静态HTTML文文档发出出访问请请求后,服服务器端端只是简简单地将将该文档档传输到到客户端端。从服服务器运运行的那那个时间间片来看看,这个个传输过过程仅仅仅占用了了很小的的CPUU资源。对于静态HTML的访问瓶颈为:网络带宽、磁盘I/O以及cache(高速缓冲存储器)。b) 对于动态页页面因为服务器器解析动动态页面面必须在在其传输输到客户户端前就就通过服服务器来来进行解解释,这这样就会会给应用用服务器器添加额额外的性性能消耗耗,如果果进一步步要访问问数据库库,则会会增加数数据库服服务器的的性能消消耗,则则动态页页面还有有额外的的瓶颈:应用服服务器的的性能,数数据库服服务器的的性能。2 系统架构设设计2.1 总体思路为提高网站站的高并并发性能能,提高高开发效效率及运运营效率率,主要要按如下下几个思思路进行行规划设设计:2.1.1 负载均衡1) 四层交换负负载均衡衡:采用负载均均衡器来来实现硬硬件级的的四层交交换负载载均衡,或或采用LLVS来来实现软软件的四四层交换换负载均均衡。2) 通过第三方方软件来来实现负负载均衡衡,同时时实现页页面请求求的缓存存。通过Ngiinx实实现反向向代理服服务器集集群,同同时搭建建squuid集集群以作作为静态态页面和和图片的的缓存。3) 通过webb服务器器的配置置来实现现负载均均衡即通过appachhe或是是Ngiinx 将客户户请求均均衡的分分给toomcaat1,tommcatt2.去去处理。2.1.2 WEB应用用开发架构构思路1) 应用开发实实现MVVC架构构三层架架构进行行webb应用开开发2) 页面尽可能能静态化化以减少少动态数数据访问问,如果果是资讯讯类的网网站可以以考虑采采用第三三方开源源的CMMS系统统来生成成静态的的内容页页面。3) 采用Osccachhe实现现页面缓缓存,采采用Meemcaacheed实现现数据缓缓存4) 采用独立的的图片服服务器集集群来实实现图片片资源的的存储及及WEBB请求2.1.3 数据存储的的设计思思路1) 数据库拆分分,把生生产数据据库和查查询数据据库分离离,对生生产数据据库采用用RACC实现数数据库的的集群。2) 采用高效的的网络文文件共享享策略,采采用图片片服务器器来实现现页面的的图片存存储。2.1.4 不同网络用用户访问问考虑1) 通过引入CCDN来来解决不不同网络络服务商商的接入入速度问问题,一一般只能能解决静静态页面面的访问问问题。2) 在不同运营营商机房房部署服服务器,通过镜像技术来实现不同网络服务商的接入速度问题。2.2 总体架构2.2.1 网站的系统统分层架构构2.2.2 网站的物理理架构2.2.3 网站的开发发架构2.2.4 网络拓扑结结构备注:1) 采用双防火火墙双交交换机做做网络冗冗余,保保障平台台服务采用双防火火墙通知知接通22线路互互联网接接入,设设备之间间采用VVRRPP协议,在在任何一一个防火火墙、互互联网发发生故障障后均可可自动将将流量切切换到另另一端,保保证网站站的正运运行,设设备或网网络恢复复后,自自动恢复复。采用双千兆兆交换机机分别接接在2台台防火墙墙上,当当某台设设备或者者网络链链路发生生故障后后,好设设备自动动接管已已坏设备备的工作作,不影影响网站站的整体体运行,根根据业务务及真实实服务器器的数量量,交换换机可以以随时增增加。2) 采用硬件设设备负载载均衡器器,实现现网络流流量的负负载均衡衡使用硬件设设备负载载均衡器器,将网网络流量量均衡的的分担到到WEBB服务器器集群各各节点服服务器,保保障平台台服务器器资源均均衡的使使用。3) 采用代理服服务器,实实现软件件级的网网络负载载均衡。4) 数据库服务务器分离离成生产产数据库库集群和和查询数数据库集集群,实实现生产产读写与与后台查查询统计计进行分分离,同同时生产产数据库库采用rrac技技术进行行2.3 架构涉及技技术的详详解2.3.1 负载均衡1. 基于DNSS的负载载均衡-一个个域名绑绑定多个个IPDNS负载载均衡技技术是最最早的负负载均衡衡解决方方案,它它是通过过DNSS服务中中的随机机名字解解析来实实现的,在在DNSS服务器器中,可可以为多多个不同同的地址址配置同同一个名名字,而而最终查查询这个个名字的的客户机机将在解解析这个个名字时时得到其其中的一一个地址址。因此此,对于于同一个个名字,不不同的客客户机会会得到不不同的地地址,它它们也就就访问不不同地址址上的WWeb 服务器器,从而而达到负负载均衡衡的目的的。这种技术的的优点是是,实现现简单、实实施容易易、成本本低、适适用于大大多数TTCP/IP应应用;但但是,其其缺点也也非常明明显,首首先这种种方案不不是真正正意义上上的负载载均衡,DDNS 服务器器将Htttp请请求平均均地分配配到后台台的Weeb服务务器上,而而不考虑虑每个WWeb服服务器当当前的负负载情况况;如果果后台的的Webb服务器器的配置置和处理理能力不不同,最最慢的 Webb服务器器将成为为系统的的瓶颈,处处理能力力强的服服务器不不能充分分发挥作作用;其其次未考考虑容错错,如果果后台的的某台WWeb服服务器出出现故障障,DNNS服务务器仍然然会把DDNS 请求分分配到这这台故障障服务器器上,导导致不能能响应客客户端。最最后一点点是致命命的,有有可能造造成相当当一部分分客户不不能享受受Webb服务,并并且由于于DNSS缓存的的原因,所所造成的的后果要要持续相相当长一一段时间间(一般般DNSS的刷新新周期约约为244小时)。所以以在国外外最新的的建设中中心Weeb站点点方案中中,已经经很少采采用这种种方案了了。2. 通过硬件四四层交换换实现负负载均衡衡在硬件四层层交换产产品领域域,有一一些知名名的产品品可以选选择,比比如Allteoon、FF5等,这这些产品品很昂贵贵,但是是物有所所值,能能够提供供非常优优秀的性性能和很很灵活的的管理能能力。YYahooo中国国当初接接近20000台台服务器器使用了了三四台台Altteonn就搞定定了3. 通过软件四四层交换换实现负负载均衡衡软件四层交交换我们们可以使使用Liinuxx上常用用的LVVS来解解决,LLVS就就是Liinuxx Viirtuual Serrverr,他提提供了基基于心跳跳线heearttbeaat的实实时灾难难应对解解决方案案,提高高系统的的鲁棒性性,同时时可供了了灵活的的虚拟VVIP配配置和管管理功能能,可以以同时满满足多种种应用需需求,这这对于分分布式的的系统来来说必不不可少。一个典型的的使用负负载均衡衡的策略略就是,在在软件或或者硬件件四层交交换的基基础上搭搭建sqquidd集群,这这种思路路在很多多大型网网站包括括搜索引引擎上被被采用,这这样的架架构低成成本、高高性能还还有很强强的扩张张性。4. 通过反向代代理服务务器实现现负载均均衡反向代理服服务器又又称为 WEBB 加速速服务器器,它位位于 WWEB 服务器器的前端端,充当当WEBB服务器器的内容容缓存器器,反向代代理服务务器是针针对 WWEB 服务器器设置的的,后台台 WEEB 服服务器对对互联网网用户是是透明的的,用户户只能看看到反向向代理服服务器的的地址,不不清楚后后台 WWEB 服务器器是如何何组织架架构的。当当互联网网用户请请求 WWEB 服务时时,DNNS 将将请求的的域名解解析为反反向代理理服务器器的 IIP 地地址,这这样 UURL 请求将将被发送送到反向向代理服服务器,由由反向代代理服务务器负责责处理用用户的请请求与应应答、与与后台 WEBB 服务务器交互互。利用用反向代代理服务务器减轻轻了后台台 WEEB 服服务器的的负载,提提高了访访问速度度,同时时避免了了因用户户直接与与 WEEB 服服务器通通信带来来的安全全隐患。目前有许多多反向代代理软件件,比较较有名的的有 NNginnx 和和 Sqquidd 。Nginxx 是由由 Iggor Syssoevv 为俄俄罗斯访访问量第第二的 Rammbleer.rru 站站点开发发的,是是一个高高性能的的 HTTTP 和反向向代理服服务器,也也是一个个 IMMAP/POPP3/SSMTPP 代理理服务器器。Squidd是由美美国政府府大力资资助的一一项研究究计划,其其目的为为解决网网络带宽宽不足的的问题,支支持HTTTP,HHTTPPS,FFTP 等多种种协议,是是现在 Uniix 系系统上使使用、最最多功能能也最完完整的一一套软体体。1) Squidd Squidd 是一一个开源源的软件件,利用用它的反反向代理理技术可可以提高高网站系系统的访访问速度度,下面面将重点点介绍 Squuid 反向代代理的实实现原理理和在提提高网站站性能方方面的应应用。Squidd反向代代理服务务器位于于本地 WEBB 服务务器和 Intternnet 之间 , 组组织架构构如下图:客户端请求求访问 WEBB 服务务时,DDNS 将访问问的域名名解析为为 Sqquidd 反向向代理服服务器的的 IPP 地址址,这样样客户端端的 UURL 请求将将被发送送到反向向代理服服务器。如如果 SSquiid 反反向代理理服务器器中缓存存了该请请求的资资源,则则将该请请求的资资源直接接返回给给客户端端,否则则反向代代理服务务器将向向后台的的 WEEB 服服务器请请求资源源,然后后将请求求的应答答返回给给客户端端,同时时也将该该应答缓缓存在本本地,供供下一个个请求者者使用。Squidd 反向向代理一一般只缓缓存可缓缓冲的数数据(比比如 hhtmll 网页页和图片片等),而而一些 CGII 脚本本程序或或者 AASP、JJSP 之类的的动态程程序默认认不缓存存。它根根据从 WEBB 服务务器返回回的 HHTTPP 头标标记来缓缓冲静态态页面, 有四四个最重重要 HHTTPP 头标标记:· Last-Moddifiied: 告诉诉反向代代理页面面什么时时间被修修改· Expirres: 告诉诉反向代代理页面面什么时时间应该该从缓冲冲区中删删除· Cachee-Coontrrol: 告诉诉反向代代理页面面是否应应该被缓缓冲· Pragmma: 用来包包含实现现特定的的指令,最最常用的的是 PPraggma:no-cacche 注:DNSS 的轮询机机制将某某一个域域名解析析为 多多个IPP地址。2) NginxxNginxx (“engginee x”) 是是俄罗斯斯人Iggor Syssoevv(塞索索耶夫)编写的的一款高高性能的的 HTTTP 和反向向代理服服务器。Nginxx 已经经在俄罗罗斯最大大的门户户网站 RRambblerr Meediaa(wwww.rrambblerr.ruu)上运运行了44年时间间,同时时俄罗斯斯超过220%的的虚拟主主机平台台采用NNginnx作为为反向代代理服务务器。在国内,已已经有新新浪博客客、新浪浪播客、搜搜狐通行行证、网网易新闻闻、网易易博客、金金山逍遥遥网、金金山爱词词霸、校校内网、YYUPOOO相册册、豆瓣瓣、迅雷雷看看等等多家网网站、频频道使用用 Ngginxx 服务务器。Nginxx 特点点如下:1) 工作在OSSI模型型的第77层(应应用层)2) 高并发连接接官方测试能能够支撑撑5万并并发连接接,在实实际生产产环境中中跑到223万万并发连连接数。 3) 内存消耗少少在3万并发发连接下下,开启启的100个Ngginxx 进程程才消耗耗1500M内存存(155M*110=1150MM)。 4) 配置文件非非常简单单风格跟程序序一样通通俗易懂懂。 5) 成本低廉Nginxx为开源源软件,可可以免费费使用。而而购买FF5 BBIG-IP、NNetSScaller等等硬件负负载均衡衡交换机机则需要要十多万万至几十十万人民民币。 6) 支持Rewwritte重写写规则能够根据域域名、UURL的的不同,将将 HTTTP 请求分分到不同同的后端端服务器器群组。 7) 内置的健康康检查功功能如果 Ngginxx Prroxyy 后端端的某台台 Weeb 服服务器宕宕机了,不不会影响响前端访访问。 8) 节省带宽支持 GZZIP 压缩,可可以添加加浏览器器本地缓缓存的 Heaaderr 头。 9) 稳定性高用于反向代代理,宕宕机的概概率微乎乎其微。 3) Nginxx+squuid页页面缓存存来实现现反向代代理负载载均衡通过Ngiinx反反向代理理和sqquidd缓存实实现动静静分离的的架构图如如下所示示:5. Apachhe +toomcaat集群群实现负载载均衡。使用 appachhe和多多个toomcaat 配配置一个个可以应应用的wweb网网站,用用Apaachee进行分分流,把把请求按按照权重重以及当当时负荷荷分toomcaat1,tommcatt2.去处处理,要要达到以以下要求求:1) Apachhe 做做为HtttpSServver ,通过过modd_jkk连接器器连接多多个 ttomccat 应用实实例,并并进行负负载均衡衡。2) 同时还要配配置seessiion复复制,也也就是说说其中任任何一个个tommcatt的添加加的seessiion,是是要同步步复制到到其它ttomccat, 集群内内的toomcaat都有有相同的的sesssioon,并并为系统统(包括括 Appachhe 和和 toomcaat)设设定 SSesssionn 超时时时间。2.3.2 缓存1. 系统架构方方面的缓缓存1) Squidd缓存架构方面面使用SSquiid进行行缓存。注:SQUUID使使用了LLM算法法,LMM就是页页面Heeadeer里时时间(DDatee)和LLastt-Moodiffiedd时间的的差。DDatee一般是是Squuid从从后面取取页面的的时间,LLastt-Moodiffiedd 一般般是页面面生成时时间。2) Nginxx的缓存存功能Nginxx从0.7.448版本本开始,支支持了类类似Sqquidd的缓存存功能;缓存把URRL及相相关组合合当作KKey,用用md55编码哈哈希后保保存;Nginxx的Weeb缓存存服务只只能为指指定URRL或状状态码设设置过期期时间,不不支持类类似Sqquidd的PUURGEE指令,手手动清除除指定缓缓存页面面;采用MMAAP实现现,设置置的缓存存区大小小不能超超过物理理内存+SWEEB的值值3) 基于memmcacchedd的缓存存nginxx对meemcaacheed有所所支持,但但是功能能并不是是特别之之强,性性能上还还是非常常之优秀秀。locattionn /mmem/      if ( $urii "/memm/(0-99A-ZZa-zz_*)$"" )           sett $mmemccachhed_keyy "$1"      mmemccachhed_passs      1922.1668.11.2:112211;          exppirees 770;这个配置会会将htttp:/m/meem/aabc指指明到mmemccachhed的的abcc这个kkey去去取数据据。Nginxx目前没没有写入入memmcacchedd的任何何机制,所所以要往往memmcacchedd里写入入数据得得用后台台的动态态语言完完成,可可以利用用4044定向到到后端去去写入数数据。Nginxx传统缓缓存的缺缺点也是是它和ssquiid等缓缓存软件件的不同同之特色色,所以以也可看看作其优优点。在在生产应应用中它它常常用用作和ssquiid的搭搭档,ssquiid对于于带?的的链接往往往无法法阻挡,而而ngiinx能能将其访访问拦住住,例如如:htttp:/m/?和和htttp:/suudonne.ccom/在sqquidd上会被被当做两两个链接接,所以以会造成成两次穿穿透;而而ngiinx只只会保存存一次,无无论链接接变成hhttpp:/suddonee.coom/?1还是是htttp:/suudonne.ccom/?1223,均均不能透透过ngginxx缓存,从从而有效效地保护护了后端端主机。nginxx会非常常老实地地将链接接形式保保存到文文件系统统中,这这样对于于一个链链接,可可以很方方便地查查阅它在在缓存机机器上的的缓存状状态和内内容,也也可以很很方便地地和别的的文件管管理器如如rsyync等等配合使使用,它它完完全全全就是是一个文文件系统统结构。2. 应用程序方方面的缓缓存1) OSCaccheOSCacche由由OpeenSyymphhonyy设计,它它是一种种开创性性的JSSP定制制标记应应用,提提供了在在现有JJSP页页面之内内实现快快速内存存缓冲的的功能,OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案。OSCache有以下特点:缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。拥有全面的API-OSCache API给你全面的程序来控制所有的OSCache特性。永久缓存-缓存能随意的写入硬盘,因此允许昂贵的创建(expensive-to-create)数据来保持缓存,甚至能让应用重启。支持集群-集群缓存数据能被单个的进行参数配置,不需要修改代码。缓存记录的过期-你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不需要时)。OSCacche是是当前运运用最广广的缓存存方案,JJBosss,HHibeernaate,Sprringg等都对对其有支支持。OSCacche的的特点:1) 缓存存任何对对象:你你可以不不受限制制的缓存存部分jjsp页页面或HHTTPP请求,任任何jaava对对象都可可以缓存存。 2) 拥有有全面的的APII:OSSCacche APII允许你你通过编编程的方方式来控控制所有有的OSSCacche特特性。 3) 永久久缓存:缓存能能被配置置写入硬硬盘,因因此允许许在应用用服务器器的多次次生命周周期间缓缓存创建建开销昂昂贵的数数据。 4) 支持持集群:集群缓缓存数据据能被单单个的进进行参数数配置,不不需要修修改代码码。 5) 缓存存过期:你可以以有最大大限度的的控制缓缓存对象象的过期期,包括括可插入入式的刷刷新策略略(如果果默认性性能不能能满足需需要时)。2) Memcaacheedmemcaacheed是高高性能的的分布式式内存缓缓存服务务器。一一般的使使用目的的是,通通过缓存存数据库库查询结结果,减减少数据据库访问问次数,以以提高动动态Weeb应用用的速度度、 提提高可扩扩展性。Memcaacheed是以以Keyy/Vaaluee的形式式单个对对象缓存存。3) 自主开发的的内存数据据缓存服服务a) 独立进程方方式的缓缓存服务务对于一些常常用的动动态数据据通过开开发程序序服务缓缓存在内内存中,提提供给其其他子系系统调用用,如下下面的数数据就可可以通过过这样方方式进行行缓存。1) 用户基本信信息及状状态的信信息缓冲冲2) 列表缓存,就就像论坛坛里帖子子的列表表3) 记录条数的的缓存,比比如一个个论坛板板块里有有多少个个帖子,这这样才方方便实现现分页。4) 复杂一点的的grooup,ssum,ccounnt查询询,比如如积分的的分类排排名b) 集成在WEEB应用用中的内存存缓存在web应应用中对对于热点点的功能能,考虑虑使用完完全装载载到内存存,保证证绝对的的响应速速度,对对于需要要频繁访访问的热热点数据据,采用用集中缓缓存(多多个可以以采用负负载均衡衡),减减轻数据据库的压压力,比比如:很很多配置置信息,操操作员信信息等等等。2.3.3 页面静态化化静态的HTTML页页面严格格地由标标准的HHTMLL标示语语言构成成,并不不需要服服务器端端即时运运算生成成。这意意味着,对对一个静静态HTTML文文档发出出访问请请求后,服服务器端端只是简简单地将将该文档档传输到到客户端端。从服服务器运运行的那那个时间间片来看看,这个个传输过过程仅仅仅占用了了很小的的CPUU资源。页面静态化化就是采采用效率率最高、消消耗最小小的纯静静态化的的htmml页面面来替换换动态页页面。我我们尽可可能使我我们的网网站上的的页面采采用静态态页面来来实现,这这个最简简单的方方法其实实也是最最有效的的方法。同时采用第第三方开开源的CCMS系系统来实实现网站站内容的的管理。对于大量内容并且频繁更新的网站,我们无法全部手动去挨个实现页面静态化,所以我们需要引入常见的信息发布系统(CMS),信息发布系统(CMS)可以实现最简单的信息录入自动生成静态页面,对于一个大型网站来说,拥有一套高效、可管理的CMS是必不可少的。同时,HTTML静静态化也也是某些些缓存策策略使用用的手段段,对于于系统中中频繁使使用数据据库查询询但是内内容更新新很小的的应用,可可以考虑虑使用HHTMLL静态化化来实现现,比如如论坛中中论坛的的公用设设置信息息,这些些信息目目前的主主流论坛坛都可以以进行后后台管理理并且存存储再数数据库中中,这些些信息其其实大量量被前台台程序调调用,但但是更新新频率很很小,可可以考虑虑将这部部分内容容进行后后台更新新的时候候进行静静态化,这这样避免免了大量量的数据据库访问问请求。在进行httml静静态化的的时候还还可以使使用一种种折中的的方法,就就是前端端继续使用用动态实实现,在在一定的的策略下下通过后后台模块块进行定定时把动动态网页页生成静静态页面面,并定定时判断断调用,这这个能实实现很多多灵活性性的操作作。为了提高静静态HTTML的的访问效效率,主主要可以以对以下下几个方方面进行行优化:网络带带宽、磁磁盘I/O以及及cacche(高速缓缓冲存储储器)。2.3.4 数据库配置置及优化化1. 数据库集群群对生产数数据库采采用RAAC实现现数据库库的集群群。2. 数据库及表表的散列列把生产数据据库和查查询数据据库进行行分离,针针对系统统业务数数据的特特点,把把大的表表进行拆拆分,对对于访问问较多的的表采用用分区表表。使用读/写写数据库库分离,随随着系统统变得越越来越庞庞大,特特别是当当它们拥拥有 很很差的SSQL时时,一台台数据库库服务器器通常不不足以处处理负载载。但是是多个数数据库意意味着重重复,除除非你对对数据进进行了分分离。更更一般地地,这意意味着建建立主/从副本本系统,其其中 程程序会对对主库编编写所有有的Uppdatte、IInseert和和Delletee变更语语句,而而所有SSeleect的的数据都都读取自自从数据据库(或或者多个个从数据据库)。尽管概念上上很简单单,但是是想要合合理、精精确地实实 现并并不容易易,这可可能需要要大量的的代码工工作。因因此,即即便在开开始时使使用同一一台数据据库服务务器,也也要尽早早计划在在PHPP中使用用分离的的DB连连接来进进行读写写操作。如如果正确确 地完完成该项项工作,那那么系统统就可以以扩展到到2台、33台甚至至12台台服务器器,并具具备高可可用性和和稳定性性。3. 拥有良好的的DB配配置和备备份很多公司都都没有良良好的备备份机制制,也不不知道如如 何恰恰当地完完成这项项工作。只有imp是不够的,还需要进行热备份,从而得到超快的速度和超高的可靠性。另外,在将将所有备备份文件件从服务务器上转转移出来来之前要要进行压压缩和加加密。另另外还要要确保拥拥有设计计合理的的、有用用的关于于安全、性性能和稳稳定性问问题的设设定,包包括防止止数据败败坏,其其中很多多设定都都是非常常重要的的。2.3.5 文件存储1. 文件共享1) HDFS(GGFS)HDFS是是Apaachee Haadooop项目目中的一一个分布布式文件件系统实实现,基基于Goooglle于220033年100月发表表的Goooglle FFilee Syysteem(GGFS)论文。n 特性1) 硬件要求低低2) 高容错性3) 易可扩展4) 配置简单5) 超大文件HDFS采采用maasteer/sslavve架构构。一个HDDFS集集群是由由一个NNameenodde和一一定数目目的Daatannodees组成成。2) NFS与GGFS比比较首先从它们们的功能能上进行行分析。NNFS即即网络文文件系统统,是由由SUNN公司开开发的。它它是FrreeBBSD支支持的文文件系统统中的一一种,允允许一个个系统在在网络上上与它人人共享目目录和文文件。通通过使用用NFSS,用户户和程序序访问远远端系统统上的文文件就像像访问本本地文件件一样。而GFS是是Goooglee为了满满足本公公司迅速速增长的的数据处处理要求求而开发发的文件件系统。GGFS是是一个可可扩展的的分布式式文件系系统,用用于大型型的、分分布式的的、对大大量数据据进行访访问的应应用。它它是针对对Goooglee的计算算机集群群进行设设计的,专专门是为为Goooglee页面搜搜索的存存储进行行了优化化。所以从功能能上看,它它们两者者是完全全不同的的概念。其次从结构构上比较较,NFFS至少少包括两两个主要要部分:一台服服务器,以以及至少少一台客客户机。被被共享的的目录和和文件存存放在服服务器上上,客户户机远程程地访问问保存在在服务器器上的数数据。GFS则由由一台MMastter(通常有有几台备备份)和和若干台台TruunkSServver构构成。GGFS中中文件备备份成固固定大小小的Trrunkk分别存存储在不不同的 TruunkSServver上上,每个个Truunk有有多份(比如33)拷贝贝,也存存储在不不同的TTrunnkSeerveer上。MMastter负负责维护护GFSS中的 Mettadaata,即即文件名名及其TTrunnk信息息。客户户端先从从Massterr上得到到文件的的Mettadaata,根根据要读读取的数数据在文文件中的的位置与与相应的的 TrrunkkSerrverr通信,获获取文件件数据。再从跨平台台性上,NNFS的的基本原原则是“容许不不同的客客户端及及服务端端通过一一组RPPCs分分享相同同的文件件系统”,它是是独立于于操作系系统的,容容许不同同的操作作系统共共同地进进行文件件的共享享。而GFS则则没有这这一特点点,文件件只能被被集群系系统中的的PC所所访问,而而且这些些PC的的操作系系统一般般是Liinuxx。最后从规模模上比较较,HDDFS只只应用在在大批量量的数据据共享上上。目前GGooggle拥拥有超过过2000个的GGFS集集群,其其中有些些集群的的PC数数量超过过50000台。集集群的数数据存储储规模可可以达到到5个PPB,并并且集群群中的数数据读写写吞吐量量可达到到每秒440G。而NFS一一般没有有这么巨巨大的规规模。2. 文件的多服服务器自自动同步步使用Liinuxx 2.6内核核的innotiify监监控Liinuxx文件系系统事件件。利用开源源的lssyncc监听某某一目录录,如果果目录内内文件发发生增、删删、改,利利用Rssyncc协议自自动同步步到多台台服务器器。3. 图片服务器器分离特别是如如果程序序与图片片都放在在同一个个 APPAHCCE 的的服务器器下,每每一个图图片的请请求都有有可能导导致一个个 HTTTPDD 进程程的调用用。使用独立的的图片服服务器不不但可以以避免以以上这个个情况,更更可以对对不同的的使用性性质的图图片设置置不同的的过期时时间,以以便同一一个用户户在不同同页面访访问相同同图片时时不会再再次从服服务器(基基于是缓缓存服务务器)取取数据,不不但快速速,而且且还省了了带宽。还还有就是是,对于于缓存的的时间上上,亦可可以做独独立的调调节。2.3.6 网络问题解解决方案案你不可能要要求所有有的使用用人员,都都和你的的服务器器在一个个运营商商的网络络内,而而不同网网络之间间访问速速度会很很慢,我们可可以采用用镜像网网站和引引入CDDN来解解决这一一问题。1. 智能DNSS解析我们可以在在不同的的网络运运营商部部署weeb服务务器,通通过liinuxx上的rrsynnc工具具自动同同步到不不同网络络接入商商的weeb服务务器上,以作作为主站站的镜像像。然后通过配配置智能能DNSS解析来来引导不不同网络络的访问问用户到到对应的的网络运运营商的的webb服务器器。2. CDN如果有足够够的投资资,也可以采采用CDDN(内内容分发发网),把静态内容(静态页面和图片)进行CDN缓存,以减轻服务器压力。CDN的全全称是CConttentt Deelivveryy Neetwoork,即即内容分分发网络络。它采采取了分分布式网网络缓存存结构(即即国际上上流行的的webb caachee技术),其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络"边缘",使用户可以就近取得所需的内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因所造成的用户访问网站响应速度慢的问题。 (也就是一个服务器的内容,平均分部到多个服务器上,服务器智能识别,让用户获取离用户最近的服务器,提高速度。目前,国内内访问量量较高的的大型网网站如新新浪、网网易等,均均使用CCDN网网络加速速技术,虽虽然网站站的访问问巨大,但但无论在在什么地地方访问问都会感感觉速度度很快。而而一般的的网站如如果服务务器在网网通,电电信用户户访问很很慢,如如果服务务器在电电信,网网通用户户访问又又很慢。2.3.7 WEB应用用开发架构构设计思思路1. 基于MVCC的三层层应用开开发架构构应用开发实实现MVVC三层层架构进进行weeb应用用开发,采采用ibbatiis作为为持久层层框架,c3p0作为数据库连接池。iBATIIS 是是一个可可以设计计和实现现更好的的 Jaava 应用程程序持久久化层的的框架。iiBATTIS 把对象象和存储储过程或或者使用用 XMML 描描述符的的 SQQL 语语句进行行了关联联。简单单是 iiBATTIS 最大的的优势n ibatiis-使使用ibbatiis的十十个理由由1. 至少少能操作作10种种以上的的数据库库2. 可配置置的caachiing(包括从从属)33. 支支持DaataSSourrce、llocaal ttrannsacctioon mmanaagemmen和和glooball trranssacttionn4. 简单的的XMLL配置文文档5. 支持持Mapp, CColllecttionn, LListt和简单单类型包包装(如如Inttegeer, Strringg)6. 支持持JavvaBeeanss类(gget/sett 方法法)7. 支持持复杂的的对象映映射(如如poppulaatinng llistts, commpleex oobjeect moddelss)8. 对象象模型从从不完美美(不需需要修改改)9. 数据据模型从从不完美美(不需需要修改改)100. 你你已经知知道SQQL,为为什么还还要学习习其他东东西1) MVC架构构示意2) Strutts架构构客户端发送送一个HHTTPP请求,通通过Sttrutts框架架最后获获得一个个HTTTP响应应,这一一过程非非常重要要,它是是理解SStruuts框框架的重重点。上上图描述述了Sttrutts框架架的结构构,而下下图通过过一个活活动图更更具体描描述接受受请求直直至返回回响应的的整个过过程:2. 面向服务的的应用架架构面向服务的的应用架架构是指指构建可可分布式式的、去去中心化化的服务务器平台台,以提供许许多不同同的应用用,数据库被被分成很很多个小小部分,围围绕每个个部分都都会创建建一个服服务接口口(APPI),并且该该接口是是访问数数据库的的唯一途途径。最最终数据据库演变变成一个个非常庞庞大的共共享资源源。这种架构是是松散耦耦合的,并并且围绕绕着服务务进行构构建。面面向服务务的架构构提供给给他们隔隔离特性性,一个个服务可可能有很很多台数数据库服服务器,他他们之间间的数据据是相通通的,而而对外他他们的接接口只有有一个,外外面是无无法知道道这个服服务后面面的数据据组织是是如何搭搭建的。这样就有了了

    注意事项

    本文(前台门户网站架构设计方案(我们公司的真实案例)32374.docx)为本站会员(you****now)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开