




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
高级缓存机制在网络评论系统中应用的研究 摘要 缓存技术被认为是减轻服务器负载、降低网络拥塞、增强网络可扩展性的 有效途径之一,其基本思想是利用客户访问的时间局部性原理,将客户访问过 的内容在c a c h e 中存放一个副本,当该内容下次被访问时,不必连接到驻留网 站,而是由c a c h e 中保留的副本提供。但是通用的w e b 动态应用程序只是使 用缓存技术来作为存放对象的容器,对w e b 性能的提高十分有限。 本文在深入研究了现有动态内容管理和传输技术的前提下,针对通用的缓 存技术不能显著提高w e b 访问性能的局限性,提出了一种高级缓存机制。该 机制在采用了实体对象缓存池的基础上,进一步引入了索引缓存。针对影响动 态内容访问性能的多个因素,逐一建立多个加速缓存池,并且在各个缓存池之 间建立起有机高效的通信和管理机制,以达到整体提高w e b 访问性能的目的。 网络评论系统是一个网络用户访问负载压力很大的应用系统。本文对网络 评论做了详细的需求分析,把高级缓存池机制引入到设计方案中。 关键词服务器性能高级缓存机制网络评论对象池 r e s e a c ho fm u l t i l e v e lc a c h i n gt e c h n o l o g y - b a s e dn e t w o r k c o m m e n ts y s t e m a b s t r a c t t h ec a c h i n gi so n eo f t h em o s te f f e c t i v et e c h n o l o g yt oo i i l o a dw e b s e r v e r s ,b u t c u r r e n t l yu s e dd y n a m i ca p p l i c a t i o np r o g r a m su s et h ew e bc a c h i n gt e c h n i q u eo n l y t om a k ei tav e c t o rt os a v eo b j e c t s ,i t sp r o m o t i o nt ot h ep e r f o r m a n c eo f w e bs e r v e r s i sq u i t el i m i t e d i nt h i sp a p e r , am u l t i l e v e l c a c h i n gm e c h a n i s m ,w h i c ha i m s a ts o l v i n gt h e p r o b l e mo fg e n e r a lw e bc a c h i n gm e c h a n i s mc a l ln o tn o t a b l yi m p r o v et h ew e b a c c e s s i n gp e r f o r m a n c e ,w a sb r o u g h tf o r w o r da f t e ra ni n - d e p t hs t u d yt oc u r r a n t d y n a m i cc o n t e n tm a n a g e m e n ta n dt r a n s m i t i o nt e c h n o l o g y t h i sm e c h a n i s mn o to n l y u s e dar e a lo b j e c tc a c h i n gp 0 0 1 b u ta l s oi n t r o d u c e da i li n d e xc a c h i n gp o o la n da l l k i n d so fa c c e l e r a t i n gc a c h i n gp o o l sa c c o r d i n gt od i s t i n c tf a c t o r st h a ti n f u e n c et h e p e r f o r m a n c eo fd a n a m i cc o n t e n ta c c e s s i o np e r f o r m a n c e a l s o ,i tc o n s t r u c t e da n o r g a n i ca n de f f i c i e n tc o m m u n i c a t i o na n dm a n a g e m e n tm e c h a n i s ma m o n gt h e s e c a c h i n gp o o l si no r d e rt oi m p r o v et h ew h o l ep e r f o r m a n c eo f t h ew e b a c c e s s i o n n e t w o r kn e w sc o m m e n ts y s t e mi sad y n a m i cw e b a p p l i c a t i o ni t e mt h a th a s l a r g ea m o u n to fa c c e s s i n gp r e s s u r e t h i sa r t i c l ea p p l i e dt h em u l t i l e v e lc a c h i n g m e c h a n i s mm e n t i o n e da b o v et ot h ed e s i g np l a no ft h ei t e ma f t e rm a k i n gd e t a i l e d r e q u i r e m e n ta n a l y s i so fi t a tl a s t ,t h ef i n a ln e t w o r kc o m m e n ts y s t e mb a s e do nt h e m u l t i l e v e lc a c h i n gm e c h a n i s mw a ss t r i c t l yt e s t e d ,a n dr e l e v a n tt e s t i n gd a t aw a s p r e s e n t e di nd e t a i l t h er e s u l tm a k ei tc l e a rt h a to u rm u l t i l e v e lw e b c a c h i n gs y s t e mc a ne f f i c i a n t l y d e c r e a s eu s e r sw a t i n gt i m e ,a v o i ds o m eu n n e c e s s a r yc o m m u n i c a t i o n sb e t w e e n s e r v e r sa n de n h a n c et h ep e r f o r m a n c eo fw e bs e r v e r s t h ep a p e ro f f e ra p r a c t i c a l r e f e r e n c ef o rd e v e l o p i n gt h ew e b d y n a m i cc o n t e n ts y s t e mi nf u t u r e k e yw o r d s : s e r v e rp e r f o r m a n c e ,c a c h i n gt e c h n o l o g y , c o m m e n ts y s t e m , o b j e c t1 9 0 0 l 插图目录 图2 1 网络评论前台6 图2 2 网络评论后台监控6 图2 3 评论管理人员6 图2 - 4 评论系统管理人员6 图3 1w e b 的工作过程图1 2 图3 2w e b 动态应用程序交互示意图1 4 图3 3 大访问量时w e b 动态应用程序交互示意图1 4 图3 - 4 网站的组成和后台服务器各自响应时间的分布图1 5 图3 51 9 9 8 年世界杯网页访问流量分布图1 6 图3 - 6w e b 高速缓存条件下w e b 访问示意图1 7 图4 1 网络评论系统系统结构图2 4 图4 2 高级缓存池结构图2 5 图4 3 评论索引缓存池结构图2 7 图4 4 文件对象缓存池查询流程图2 8 图4 5 网络评论页数据访问示意图2 9 图4 6 新评论对象缓存池3 0 图4 7 评论排行界面图3 2 图4 - 8 浏览评论取得评论序列图3 2 图4 9 浏览评论主界面3 3 图4 1 0 发表评论主界面3 5 图4 1 1 后台评论管理主界面3 6 图4 1 2 后台一次评论审核界面3 6 图4 1 3 评论二次审核界面图3 7 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得 的研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包 含其他人已经发表或撰写过的研究成果,也不包含为获得盒胆王些盔堂或 其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所 做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作者签名: 辩醐7 铂,2 日 学位论文版权使用授权书 本学位论文作者完全了解金蟹王些盔堂有关保留、使用学位论文的规 定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被 查阅和借阅。本人授权合罡工业大堂可以将学位论文的全部或部分内容编入 有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位 论文。 ( 保密的学位论文在解密后适用本授权书) 学位敝储签渺琴 签字日期司年岳月f 阳 学位论文作者毕业后去向: 工作单位: 通讯地址: ) k 导师签名:杉 签字日 电话: 邮编: 年 致谢 首先,我要衷心地感谢我的指导教师朱程辉老师,在论文撰写之际给了我 很大的帮助,朱程辉老师从我开题报告、中期报告一直到最后的论文撰写都始 终如一的关心和指导我,从各个方面给予了无微不至的关怀和大量的支持与帮 助。 我还要感谢在合肥工业大学攻读学位期间,教授我知识的所有老师们,他 们严谨的教学作风,高尚的为师品德、宽厚的待人态度和对学生认真负责的态 度使我不仅加深了对专业知识和研究方法的掌握与理解,而且对我的学习和工 作起到了表率的作用。我深深的感谢他们。 在研究生学习期间,有很多朋友都给予了我真诚关心和热情的帮助。没有 他们的帮助就没有今天毕业论文的顺利完成,在此我也真心的感谢他们。 最后,我特别感谢我的父母和我的妻子和女儿,他们的关爱和支持是我永 远前进的动力。 第一章概述 1 1 课题来源和研究背景 本课题来源于国内某综合性门户网站的网络评论系统改造升级项目。其前 一版本由于随着时间的发展和网络用户的增加而不能够负载巨大的网络评论发 表量,导致服务器性能下降而被废弃。为适应网络用户的需求,重新设计实现 该版本的网络评论系统。该网站每天的网络发表数量为5 0 0 0 0 1 0 0 0 0 0 条,在 重大社会事件发生时,其网络发表数量还会更高。 网络评论系统是为了满足广大网络用户发表评论,对相关表述自己的意见, 实现其社会主人翁感的需求而设计的。网络评论系统具有汇集网络舆论,指导 言论的作用。它是一个自由开放的网络言论平台,不分男女老幼,长幼尊卑, 任何人都可以对所发生的社会事件和热点阐述自己的理解和看法。 网络评论系统具有访问量高,在重大社会事件发生时,评论的发表数量攀 升产生访问量骤变的特点,并且在网络用户发表评论的同时,后台监控人员同 期批量的审核网络用户发表的评论。这些因素对w e b 服务器性能提出了非常高 的要求, 在设计和实现该项目时提出了高级缓存池的概念,将网络用户需要访问的 评论对象缓存在服务器内存中,形成评论实体对象缓冲池;为了大幅度的提高 网络评论的查询速度,对评论实体对象建立内存索引,并将索引对象存入评论 索引对象缓存池中;在这两个核心缓存池的基础上,我们设计实现了文件索引 缓存池、新评论对象缓存池和命令堆栈缓存池,这些高速缓存池的联合使用, 将影响系统性能的主要瓶颈:数据库并发访问的问题做了很好的解决。在各个 缓存池之间我们建立起了灵活高效的通信与管理机制,使得众多缓存池成为一 个有机的整体。 并且网络评论系统针对其他会引起系统性能下降的因素各个突破,建立了 页数据对象缓存池,采取客户端静态页面缓存,动态内容服务器静态化,服务 器容器预加载等有效措施大大的提高了网络评论系统的性能。经过严格的测试 和测试数据的比较和分析,验证了高级缓存池机制的确能够显著的提高w e b 动态内容应用程序的性能。 本论文是针对在设计和实现网络评论系统时所面临的用户访问量大、发表 评论数量多、后台审核压力大等技术难题时,在详细分析了用户和系统需求后, 采用了高级缓存池机制结合其他有效的w e b 服务器性能提升的方法,提出了解 决高访问量环境下的w e b 动态内容应用程序的解决方案。 1 2 国内外研究现状 目前改善w e b 性能的研究主要集中在客户端处理能力的提高,网络硬件设 各的进一步完善,w e b 服务器运算性能的提升等方面。现在网络带宽逐步提高, i n t e m e t 的主干网容量正以每年6 0 的速度扩充,但是网络系统处理能力的提高 总是跟不上网络用户的增长。在服务器端可以采用购买高档服务器,集群、均 衡负载等功能,但这又往往意味着网络营运成本的增高,且可扩展能力低,实 现难度较大。根据网络流量分析研究,为了提高w e b 性能,单纯依靠增加网络 带宽是远远不够的。所以利用现有的资源,运用良好的设计方法提高w e b 服务 器的效率则成为可行的解决方法。缓存技术是被公认的行之有效的解决网络拥 塞和提高网络响应速度的解决方案,被广泛的应用在客户端和服务器端。 提高w e b 性能主要有以下几种方法: ( 1 ) 完善h r r p 协议 h t t p 协议是一种简单的无状态的,请求应答协议,在每次应答结束后就 丢弃客户端请求信息,虽然利用服务器会话暂存、u r l 地址复写和客户端c o o k i e 等技术可以保证一个商业逻辑的完整,但是不能完全满足降低服务器负载的要 求,使得一个商业逻辑中包含了很多的请求应答,虽然h p p t l 1 协议已经对网 络系统的影响提出了改进,但仍然存在着缺陷和不足,需要进一步改进。 ( 2 ) w e b 代理服务器缓存技术 w e b 访问采用代理服务器模式,将网络用户需要的数据与网络用户的距离 拉近,本来需要在远处w e b 服务器上取得的信息第一次从远程服务器取得后缓 存在距离网络用户交近的代理服务器上,或网路用户的局域网代理服务器上, 下次访问相同的内容时就不需要从远程服务器上取得了,而是直接从代理服务 器上取得,代理服务器使用专用硬件和软件相结合的方式使用缓存来访问最近 使用过的指令和数据,w e b 代理服务器有正向代理和反向代理两种工作方式 代理服务器是执行代理服务的软件应用程序。它通常安装在1 台同时跨越 i n t e m e t 和内部网的计算机上,处于客户端和网站服务器之间。若内部网用户要 访问i n t e m e t 时首先要和代理服务器建立通信连接,然后代理服务器再和i n t e m e t 的服务器建立通信连接。 代理服务器具有一个较大的缓冲存储器,负责暂存用户近期访问过的数据, 这样,被频繁访问的数据就会被暂时缓存,避免了已有内容的重复请求和传送, 减少了网络流量。代理服务器缓冲存储器在存满内容后,将根据某种策略进行 替换,通常首先淘汰那些重复使用率低的内容;对于那些用户经常访问的内容; 使用相应算法的进行更新;以保持与原服务器的内容同步,一般情况下,使用代 理服务器的网络与未使用代理服务器的网络相比,节省网络带宽5 0 左右,同时, 由于客户机与代理服务器之间的i n t e m e t 内部网通常是局域网,其速度要比代理 服务器到广域网的服务器要快得多,用户在访问缓存中的暂存数据时能够节省 大量的时间。 代理服务器的运行与操作系统有关,其性能会受限于相关操作系统的某些 2 缺点。因为代理服务器必须作为于与其相关的专用平台上,脱离了专用平台就 无法实现,对于跨操作系统平台的用户而言,使用代理服务器缓存这一方案迫 使这些用户要么更换现有网络,要么为了得到高速缓存服务而实施并行网络。 由于代理服务器是内部网络所有用户的通道,在网络负载过重时会失败,所以 不适合成百上千个并发用户进行访问。另外,代理服务器需要配置每一个用户 的浏览器,这对于i s p 和大企业而言,往往是难以接受的。 ( 3 ) 集群技术 集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与 可用性的服务平台。在客户端看来,一个集群就象是一个服务实体,但事实上 集群由一组服务实体组成。,集群将客户端的请求按照一定的算法分配到多台服 务器上运算执行,然后将多个运算结果合成一个应答信息返回给客户。在服务 器问通过软件监控服务器的c p u 或应用,并保持连续不断的通信,当某服务器 发生中断,其他服务器接收不到它发出的通信信号时,就将该服务器上的工作 转移到指定的服务器上运行,或者当某台服务器任务过多时,集群软件的切换 功能也起作用,将它的工作分配到任务少的服务器上,从而达到提高网络访问 速度的目的集群技术在一定程度上提高了处理能力,集群技术作为一项服务端 提速技术可以达到很好的效果,但它需要很高的软硬件支持和网络协调,往往 集群的实施伴随着服务器端硬件的投入和成本的增加。 ( 4 ) 压缩技术 压缩技术是指将户需要的占较大空间的数据,如视频、图像、声音等在网 络传输之前进行压缩,而后再进行网络传输。 ( 5 ) 客户端浏览器缓存技术 客户端浏览器缓存技术主要应用于终端用户,使用客户端缓存,将某用户 近来访问过的站点网页存起来。该用户下次再访问该站点时,只需要从浏览器 本地缓存中取出信息,而无须访问远处的w e b 服务器,这种技术的确能够加快 网页访问速度,但缓存的内容无法在网络用户间共享。其它用户获取相同页面 时仍需连接到i n t e r n e t 。 ( 6 ) 使用w e b 服务器缓存技术 w e b 服务器缓存是将用户已经访问过的,或经常访问的对象保存在服务器 端的内存中或本地磁盘中,用户再次调用相同的对象时,w e b 服务器不必再产 生新的运算和耗费服务器资源较大的程序调用。据统计7 5 的网络用户最经常 访问的内容只占网络内容的1 5 ,而将这1 5 的内容对象存储在服务器高速缓 存中,而不是存储在访问速度较低的服务器数据库中,这无疑可以明显提高访 问速度。w e b 服务器缓存技术可以大幅度的提高w e b 性能,降低网络和w e b 服务器的负担。虽然客户端缓存和代理服务器缓存减少了到w e b 服务器的请求 数量,但是对于一个事务繁忙的w e b 服务器,它在访问高峰时的请求率仍然很 高。由于网络速度的提高,使得w e b 服务器越来越成为缩短用户文档取回时间 的瓶颈。 用户端和代理端的缓存目的是为了减少用户取得文档和服务器建立连接的 等待时间,而服务器端的缓存的目的却是缩短服务器对用户请求的反应时间、 增加服务器的吞吐量。因而服务器端的缓存技术和客户端的有很大的区别。 目前,w e b 缓存技术随着计算机网络的迅猛发展和广泛应用而得到了快速 的发展。国内外大多数成熟的w e b 商业软件都已经开始使用第三方或自主研发 的缓存框架。由于网络应用性能的迫切需要,w e b 缓存技术的研究日趋活跃。 其中包括功能完备,体系结构复杂,支持众多行业标准的大而全的缓存框架。 在网络评论系统这样的高访问量的w e b 动态内容应用程序系统中,由于应 用环境的特殊性和其对服务器性能的高要求,不能够只是单纯的使用其中某一 种缓存机制来达到要求,为了整体的提高性能,满足用户的需求,系统结合使 用了w e b 缓存框架和其他的有效提高服务器性能的方法,将评论对象缓存在缓 存容器种,并围绕该核心实体缓存容器构建多个协调工作,分工合理的高级缓 存池。 1 3 论文研究目标与意义 ( 1 ) 研究目标: 通过分析和研究影响w e b 动态内容应用程序响应性能的因素,提出有效的 解决方法。设计和实现对w e b 服务器响应性能有很高要求的网络评论系统,提 供一个满足广大网络用户发表评论,对社会事件表达自己看法的w e b 动态内容 交互平台,使其在高访问量的环境下稳定可靠地运行。设计和实现一种可复用 的,可以适用在各种w e b 动态内容应用系统中的灵活,可靠、高效的高级缓存 机制。 ( 2 ) 研究意义: 研究提高服务器响应性能的主要方法,结合网络评论系统的特殊需求提出 自主研发的高级缓存池机制。该高级缓存池可以有效的提高w e b 服务器响应性 能,可以被灵活的扩充和复用。在此基础上设计和实现的网络评论系统可以为 网络用户提供快速访问评论信息和发表评论的能力;可以在前台网络用户发表 大量评论的同时,后台监控人员可以顺利的批量审核评论;由于大面积点击产 生访问量骤变时,服务器仍然可以提供良好的响应服务;通过将高级缓存池机 制和多种有效提高服务器性能的方法相结合,使网络评论系统性能得到显著提 高。为今后开发高性能的w e b 动态应用系统提供了良好的实践参考。 4 第二章网络评论系统的需求与技术难点 2 1 网络评论系统简介 评论是针对现实生活中新近发生的、具有普遍意义的事件和迫切需要解决 的问题而发议论、讲道理、直接发表意见的文体。 网络评论是在网络媒体上就当前事件或事态发表的评价性意见。是网络媒 体在互联网上为网络用户提供的就和社会问题发表和交换意见的场所,是在相 互传递和交换信息过程中形成的一种无形的用户交流网。网络评论具有开放性、 自由性和随意性的特点,是网友提供开放自由的发表个人意见的网路平台。网 络评论系统承担了满足网站浏览用户阅览网站时发表意见,汇集舆论,指导言 论的作用。提供了营造一个平等开放、无时间空间限制的舆论平台,促进网络 用户对事件的关注。使网络用户具有通畅的发表言论的渠道。同时充分把握好 网络评论的自由度,进行正确的舆论引导使网络媒体达到更好的社会效果。 作为以媒体内容为支柱的网站,评论系统能为提高网站的p v ( p a g e v i e w ) 作 出贡献,并以此提高网站的u v ( u s e rv i e w ) 数量。网络评论系统要能够无缝的连 接到网站内容管理系统,为媒体内容和其他频道提供评论通道和接口。作为商 业网络应用系统,网络评论系统应该能够7 2 4 小时运行,提供灵活批量的监 控机制。在高访问量情况下,如访问峰值2 0 0 0 0 0 条, b 时服务不会显示出缓慢 迹象,和在同样访问量时后台监控能正常批量审核评论。 从以上描述可以看出,网络评论系统所承载的访问压力非常巨大,而且作 为门户网站的w e b 动态内容应用系统,它对网络用户的访问响应速度的要求也 是非常高的。下面针对该系统的特殊要求,介绍系统需求和设计实现种面临的 技术难点。 2 2 系统中涉及的主要角色 系统的主要角色由网络评论前台,网络评论后台监控,评论管理人员和评 论系统管理人员组成。他们与网络评论系统的关系如图2 1 ,图2 2 ,图2 3 和图 2 4 所示。 夕 厂、 型叫j b刘 裔 ,、 灼 伶 笺刍、 学 图2 1 网络评论前台图2 - 2 网络评论后台监控 图2 - 3 评论管理人员图2 - 4 评论系统管理人员 6 2 3 网络评论系统需求 网络评论系统需求具体见表2 1 、表2 2 。 表2 1 网络评论系统主要功能需求 前台发贴功能描述:网友通过浏览器发表评论,网友不需要用户验证自由发表 评论 输入:网络用户发表的评论内容 加工过程:系统自动过滤不良词汇,附加网友用户信息 输出:合成后的评论信息 后台审核功能描述:监控部门审核网友发表的评论 输入:网友新发表的评论信息 加工过程:删除、通过、修改跟贴 输出:审核后的评论数据 统计分析功能描述:对跟贴数量进行统计和分析 功 输入:统计查询条件 能 加工过程:数据库查询统计 输出:统计结果 需 h | 户管理功能描述:提供用户权限认证 求 输入:用户认证信息 加工过程:数据库核对处理 输出:处理完成的用户权限信息 精华评论功能描述:对网络用户发表的好的评论加以整理和管理。 输入:审核时标注为精华贴的评论 加工过程:缓存和数据库中取得数据分析统计 输出:热门评论排行 主题管理功能描述:管理人员对评论主题的管理 输入:待处理的评论主题 加工过程:备份精华评论,拷贝、迁移与复制精华评论 输出:处理完的精华评论 7 表2 2 网络评论系统性能和软硬件环境需求 每曰发贴量:5 0 0 0 0 1 0 0 0 0 0 动态缓存池容量:2 0 0 0 0 0 数据库最大连接量:2 0 0 性 预期发表评论峰值:2 0 0 0 0 0 条每天 能 正确性:每日丢失跟贴 5 条 需 健壮性:数据负载到达峰值,系统能够正常运行,可以自适应恢复。 求 可靠性:7 2 4 小时运行,故障恢复时间 3 0 分钟 效率:网友发表评论时间 3 s 易用性:任何网站浏览用户不需要学习,自由使用。 安全性:防止恶意攻击,后台管理资源认证。 前台硬件环境需求:可以正常运行w e b 浏览器软件的任何计算机 软 后台便件环境需求:i b mx 2 3 68 8 4 2 - 1 0 2 服务器 硬 后台软件环境需求: 件 操作系统:l i n u x 内核2 4 以上版本 环 开发语言:j d k1 4 以上版本 境 w e b 服务器:a p a c h es e r v e r2 0 需 动态内容服务器:c a u c h or e s i n2 1 求 数据库:m y s q l4 0 代码编写工具:l i n u xv i 配置管理工具:c v s 2 4 涉及的技术难点 作为国内大型的综合性门户网站,其网络用户数量巨大,旗下的网络评论 系统受关注程度和用户量是其他中小型网站很难遇到的。当出现巨大的访问量 8 时,如何既能使系统保证网络用户自由地发表评论,又能稳定、即时、高效的 响应用户,是网络评论系统需要突破的主要技术难关。 2 4 1 高访问量给评论系统带来的困难 网络评论系统作为媒体综合性网站不可或缺的一部分,反映了整个互联网 意识形态的动向,其访问量和发表评论数量是各大综合性网站业务性能指标的 重要参数。对于一个一般的大型门户网站,它的网络评论系统每天的访问量都 在5 0 0 0 0 以上,在重大社会事件发生时往往会突破1 0 0 0 0 0 ,这就对它的服务性 能提出了很高的要求。不能让用户总是无法访问、或者访问速度极慢。这样就 算有再好的编辑、再好的销售也难留住网络用户,导致商业运作的失败。解决 网站的访问压力问题,是所有商业化网站都要考虑的事情,从对访问量的预期, 以及不同时段,访问压力的不同,都要进行综合的考虑。 网络评论系统需要提供良好的用户交换性能,注定了它必须架构在动态内 容应用程序环境中。对于普通网站的静态内容浏览,现有的主流w e b 服务器都 可以提供良好的响应服务,因为静态页面数据在第一次生成后都可以通过客户 端和服务器端的静态页面缓存提供高的响应速度,而动态页面每次访问都意味 着新的服务器请求和运算,虽然现在的w e b 动态内容服务器大部分都提供了预 编译功能,下次调用时不再需要编译,且其运行于独立线程中,比以前每次的 动态调用都开辟新豹执行进程在性能上有了很的提高,但是启动运行线程还是 需要耗费内存空间和时间。 在w e b 动态应用环境中,大量的,复杂的数据库访问操作是现在w e b 动 态内容应用程序中造成系统性能下降的主要瓶颈之一。而像网络评论系统这样 的面临巨大访问量的w e b 动态内容系统,每次用户请求都访问数据库的话,系 统是根本不可能正常运行的。 在这样大的访问量情况下怎样利用有限的网络资源让网络用户获得最快的 访问速度成为网络评论系统成功与否的首要条件,这也是本文所要解决的核心 问题。 2 4 2 批量密集的审核给评论系统带来的困难 除了提供有限网络资源情况下顺畅、自由、开放的评论平台以外,网络评 论系统还要实现有力的监督,提供高效、灵活的监控和数据管理手段。首先网 络用户不能够发表违反国家宪法等六种言论;网站根据需要决定具体网络评论 栏目和相关主题的取舍;网站针对网络用户的评论提出启事声明和要求等。与 传统媒体评论相比较,网络评论具有在重大社会事件发生时网络评论发表量的 爆发性特点,而且还具有网络用户出于社会责任感的原因而引起的网络用户发 表评论的自发性特点,和网络媒体转播的广泛意义而带来的网络评论的透明性 等特点,从而也带来网络评论的不确定性,造成网络评论可控性较弱,评论管 理具有一定的难度。同时还要把握好网络评论的度,进行正确的舆论引导使网 9 络媒体内容的传播达到更好的社会效果。目前对网络评论控制的较好方法是对 评论分类管理,即要求对网络用户的时政、文学、休闲等不同评论采用先审后 发、边审边发、先发后审等不同方法使得网络评论在得到了一定的监管控制的 前提下才允许在网络上自由转播。从而防止简单的一刀切,既为网络用户提供 网上言论的必要空间,又对重要言论实时控制。 网站的评论审核人数是有限的,视网站规模不同,一般监控部门的人数为 十几人或几十人,但很少有超过百人的。而这些审核人员每天所面对的是网络 用户成千上万的评论。所以为了保证即时的审核评论,网络评论系统必须提供 批量审核的功能,但是这些密集、批量的审核操作往往又是造成系统性能下降 的主要瓶颈,所以既要保证网络用户顺畅的发表评论,又要保证后台监控的正 常批量审核,而且使系统访问性能不能下降,这也是该项目所要解决的技术难 点。 在互连网的世界中,成功的商业网站都力争获得六秒的响应时间。而对于 影响力大的门户网站要求的性能指标甚至需要更快。而网络评论庞大的访问量 又必然导致性能的下降,在高访问量和高w e b 服务性能这一对矛盾体中找到平 衡点,使得网络评论系统即能承受住巨大的访问量又能提供快速的响应速度就 成为该项目面临的最大的苦难。 对于高访问量环境下并发访问的w e b 动态内容应用系统,影响其响应性能 的主要因素集中在w e b 服务器为响应网络用户的请求而产生的大量的服务器 运算,和并发访问时对数据库的大面积的访问造成性能低下,响应缓慢。 本文提出了灵活多样的高级缓存机制,并结合其他能有效提高w e b 服务器 性能的方法。这样可以将用户最经常访问的数据缓存在服务器内存中,提高服 务器运算能力和降低对数据库的访问。采用这种架构后,系统满足了需求,性 能得到了大幅度的提升。 1 0 第三章网络评论系统涉及的理论和技术 3 1 基本概念 在网络评论系统的设计和实现中,为了提高服务器响应性能,满足系统需 求,系统采用了许多有效的技术,下面将其中涉及到的主要技术和理论知识做 以介绍。 i n t e r a c t 即国际计算机互联网,也称做万维网( w o r l dw i d ew e b ,缩写为 w w w 或简称w e b ) ,是位于世界各地彼此相互通信的数以万计的计算机组成的 一个大型计算机网络。它是网络的网络,它将各种各样的网络连在一起,而不论 其规模的大小、主机数量的多少、地理位置的异同。把网络互联起来的意义就 在于把网络的资源整合起来,实现资源的共享。 ( 1 ) 网站( w e b s i t e ) 是指在i n t e r a c t 上,根据一定的规则,提供特定内容的 相关网页的集合,为网络用户浏览使用。简单地说,网站是一种通讯工具,就像 布告栏一样,人们可以通过网站来发布自己想要公开的信息,或者利用网站来 提供相关的网络服务。 ( 2 ) 门户网站( p r o t a lw e b s i t e ) 是指通向某类综合性互联网信息资源并提 供有关信息服务的应用系统,它将各种应用系统、数据资源和互联网资源集成 到一个信息管理平台上。并以统一的用户界面提供给用户,使企业可以快速地 建立企业对客户、企业对内部员工和企业对企业的信息通道,使企业能够释放存 储在企业内部和外部的各种信息。f - j p 网站一般都拥有大量的访问用户,如何 为众多的网络用户提供优质快速的信息服务,提高w e b 访问性能是门户网站的 核心竞争力。 ( 3 ) w e b 服务器( w e bs e r v e r ) 是指一个管理资源并为用户提供服务的 计算机软件,通常分为文件服务器,数据库服务器和应用程序服务器。 ( 4 ) w e b 应用程序( w e ba p p l i c a t i o n ) 是h t m l 文档、图片、模板等静 态内容和需要通过w e b 服务器运算、执行或调用其他应用程序而生成,可以和 访问者交互的动态内容组成的可以在w e b 服务器上部署的w e b 资源的集合。 大部分w e b 应用都以t c p h p 协议进行通信,以h t t p 协议传输内容。 ( 5 ) h t t p 协议( h y p e r t e x t t r a n s f e r p r o t o c o l ,超文本传输协议) 是用于从 w e b 服务器传输超文本到本地浏览器的传送协议。它可以使浏览器更加高效, 使网络传输量减少。它不仅保证计算机正确快速地传输超文本文档,而且还确 定传输、显示文档中的内容等。 i 订p 协议采用请求响应方式。一个客户机与服务器建立连接后,发送一 个请求给服务器,请求方式的格式为:统一资源标识符( u r l ) 、协议版本号,后 边是m i m e 信息包括请求修饰符、客户机信息和可能的内容。服务器接到请求 后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一 个成功或错误的代码,后边是m i m e 信息包括服务器信息、实体信息和可能的 内容。 从一个用户请求生成到该请求得到响应,w e b 的工作过程如下: ( 1 ) 浏览器用u r l 查询d n s 域名服务器d n s 对域名进行解析并返回i p 解析地址。 ( 2 ) 浏览器用这个i p 地址建立一次到该i p 地址的t c p ,i p 连接。 ( 3 ) 浏览器通过该连接向w e b 服务器发出一个h r r p 请求。 ( 4 ) 基于该请求的内容,w e b 服务器生成相应的响应信息资源,给h r r p 应答消息,发送给浏览器。关闭本次连接。 ( 5 ) 浏览器得到完整的响应消息后,分析所获得的页面,并提取出其中包 含的资源对象的u r l 。 ( 6 ) 浏览器得到所有的内嵌资源后,根据具体的格式解释这些资源,并把 它们呈现给用户。 图3 - 1w e b 的工作过程图 h t t p 协议具有以下的特点: ( 1 ) 无连接性:就是说,当浏览器向w e b 服务器提出请求,w e b 服务器 产生应答信息时浏览器和服务器之间不会建立起在整个请求应答过程中的持 续的连接。 ( 2 ) 无状态性:w e b 服务器产生了应答信息以后,就会彻底忘记客户请 求,不会保存客户请求信息。 但是对于动态内容应用程序,整个应用逻辑请求会在很多个请求应答中完 成,以到达w e b 服务器和客户的交换,这样就会产生出很多的h 1 v r p 连接。而 网络用户请求的一般都是相同或相似的内容,系统信息一般都存储在服务器数 据库中,这样一来用户的每次请求都会引起服务器大量的数据库查询和服务器 计算工作。对于访闯量大的w e b 服务器就会引起很大的访问负担。 3 2w e b 服务器性能分析 随着i n t e m e = t 的蓬勃发展和广泛使用,w e b 业务量也迅速增长,随之而来 的网络性能问题也日益突出,如何提高w e b 响应速度和性能也倍加受到关注。 网络内容和网络用户急剧增加,使网络负载不断加重,同时,用户对网络的速 度和效果愈加重视,对网络的访问质量提出了更高的要求,这对众多企业、 i n t e m e t 内容服务提供商来说越来越成为一种挑战。 网站性能差意味着需要购买功能更强大的服务器或更高速的网络连接,极 大地影响着网站的整个运营成本。网站性能差也意味着有更多的用户会因为不 满意网站服务而不再访问,而用户流量决定了网站的潜在收入。今天,有大概 l o 到3 0 的访问者因为服务器的响应速度过慢而取消了他们的请求,这就意 味着您可能已经丢掉了其中一些潜在用户。更糟的是,超过2 0 的定购过程因 为加密安全连接连接和响应太慢而被取消,这就意味着网络环境已经使商业网 站丢掉了一些已经上门的客户。因此,网站性能差对网站的赢利产生着极大的 负面效应。 根据统计资料表明。超过8 0 的网络用户经常访问的是2 0 的热门站点, 在这些热门网站中又有一部分热门内容吸引了绝大多数访问者的注意。而这些 热门内容中的动态内容又是w e b 服务器最经常需要处理和运算的。 w e b 网站的性能很大程度上取决于网站的结构、用户数等因素。计算环境 相同的两个网站由于体系结构不同会有很大的性能差异。w e b 商业网站的性能 大多受到了后台支持系统中数据运算和动态内容产生的影响。 用户访问页面是通过h t t p 协议进行的,这样用户的一次动态页面访问就 会导致与w e b 服务器的多次交互。动态页面的访问比例日益增长,具统计现在 的互联网访问中动态内容的访问量大概占到全球访问量的5 0 左右。动态内容 的访问速度提升一直是关注的热点。而网络评论系统9 0 为动态内容,它在提 高w e b 服务器性能和用户响应速度方面的要求要高比其他的w e b 应用程序 高。图3 2 是w e b 动态应用程序交互示意图。 动态生成内容使w e b 从一种简单的电子信息浏览技术转变为全面综合性 的交互媒体和网络应用平台,但是这种转变同时也使各个网站和整个i n t e m e t 受到了巨大的性能压力挑战。网站采用动态内容越多,就越有吸引力,吸引更 多的用户。商业网站在有望获得收入的同时,w e b 服务器和后台支持系统的负 荷也呈现几何级数增加。图3 3 是大量访问是动态应用程序交换示意图。 = = = 专 = = = 参 # = = o 图3 - 2w e b 动态应用程序交互示意图 g88g8 遣叁蕊圣蕊姜蕊至蕊姜蕊垦 图3 - 3 大访问量时w e b 动态应用程序交互示意图 早期的w e b 访问中主要的性能瓶颈在于较小的网络带宽环境中快速即时 的生成和传送静态页面,现在随着网络硬件质量的提高、客户端和服务器端页 厨攀 。 9 囝8 囝g 凰8 囝参囝g 届 面缓存技术的采用和使用服务器集群等技术,这方面的性能影响已经得到了很 大的缓解。现在的主要性能瓶颈集中在动态内容的访问迫使服务器端作为响应 产生的主界面,影响越来越大。后台支持系统为提供所要求的数据而花费的计 算时间也越来越多。这使得后台服务器成为整个网站的主要瓶颈所在,现在用 户需要的形式多样的响应信息所消耗的w e b 服务器时间往往高达几秒甚至几 十秒。网站的组成和后台服务器各自响应时间的分布图如图3 - 4 所示。 图3 4 网站的组成和后台服务器各自响应时间的分布图 骤变性和大范围的点击率也是影响w e b 站点性能和可用性的两个主要因 素。对传统的网络而言,延迟的增加并不是惟一的问题,还有一个问题是在峰 值负载下内容的访问。负载是随时改变的,管理员必须设计网站以便满足用户 在峰值负载下对网络的要求,但峰值负载的增长比网站总体流量增加更快。图 3 5 所示是1 9 9 8 年世界杯网页访问流量分布,可以看出在重大赛事有了结果以 后,网站访问量骤然增高,可以到达平时访问量2 倍,在极端的情况下,访问 量的增加还会更高。 在这样大范围点击率下产生的网站访问量骤变,往往是导致w e b 服务器应 用程序崩溃的主要原因。当访问量产生骤变时,w e b 应用程序尽量少的使用大 量消耗系统资源( 如数据库连接查询等操作) ,访问快速存储介质( 如计算机内 存) 中的实体对象,产生快速的应答信息是提高w e b 性能主要采用的方法。 如果采取传统的数据库访问方式,所有的用户访问信息都从数据库中查询 得到,系统肯定是承受不住的。所以可行的办法就是将评论信息缓存在服务器 内存中,使所有的动态内容运算都在服务器内存中进行。因为计算机内存对象 的访问速度是非常快的,远远高于数据库系统和磁盘文件访问速度。所以在网 络评论系统中应采用w e b 缓存技术。 图3 51 9 9 8 年世界杯网页访问流量分布图 3 3 w e b 缓存技术 在提升w e b 性能方面有很多技术,如缓存、集群、增加网络带宽等,而缓 存技术就是其中能大幅提高网络响应速度和收效比较明显的技术。通过缓存最 近被访问过的对象,w e b 缓存池可以减少对数据库的访问,同时也避免了每次 重构对象的额外开销,从而大大提高系统性能。 w e b 缓存是构成对象管理器的重要组成部分,它通过缓存最近被访问过的 对象来减少对数据库的访问,是一种有效减轻服务器负担,降低网络流量和缩 小访问延迟的技术。它在传统的w e b 服务器和数据库直接连接的模式中又添加 了w e b 高速缓存池这一层。在一个多层结构应用中,与其它工作比较,数据库 访
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 健康员工活动方案
- 健康幸福活动方案
- 健康文化教室活动方案
- 健康知识讲座活动方案
- 健康绳子活动方案
- 健步走公益活动方案
- 健身太极活动方案
- 健身房公关活动策划方案
- 健身房预售活动方案
- 健身疫情活动方案
- 运动素质知到课后答案智慧树章节测试答案2025年春浙江大学
- 2025年甘肃农垦集团招聘笔试参考题库含答案解析
- MOOC 模拟电子技术基础-华中科技大学 中国大学慕课答案
- 驾照体检表完整版本
- 焊接车间作业流程看板
- 围堰施工监理实施细则
- 老年痴呆护理
- 车间精益改善总结报告课件(PPT 19页)
- 中小学教育惩戒规则(试行)全文解读ppt课件
- YY∕T 1797-2021 内窥镜手术器械 腔镜切割吻合器及组件
- 《冬病夏治工作指南》
评论
0/150
提交评论