大容量论坛系统的设计与研究(开题报告)

时间:2024.5.2

大容量新华网论坛系统的设计与研究

任民 新华通讯社技术局(20xx年7月20日)

一、概述

论坛,又称电子公告板(简称BBS),是近年来流行在网络上的一个深受网友欢迎的产品。它以友好的界面,良好的操作,强大的信息发布等特点逐渐从网络众多产品中脱颖而出,成为网络建站中必不可少的一项。

新华网的论坛系统是最具影响力的论坛之一,其用户群覆盖面比较广,遍及海内外,包括了各个层次的用户,上至省、部长,下至黎民百姓;有70高龄的老者,也有在校学生。初步统计结果显示,其注册用户达350,000多人,平均日访问人次达150,000以上;而网友关心的内容更是无所不及,有谈论时政、有谈古论今,网友的一些见解是非常独到的,正是因为该论坛具有一定的影响力,因此,有一部分的网友虽然很少在论坛中发表见解,但是,他们会经常阅读该论坛的内容,据不完全统计,论坛每日发贴量达12,000以上,高峰时在线人数为达36,300人。

随着新华网论坛影响的不断扩大,现有的系统承受着越来越大的压力,为了落实中央关于抢占网络舆论阵地的指示,也为了给网友提供更好的服务,新华网计划搭建大容量的论坛系统,初步目标为具备每天支持70万人次访问、点击量3000万,发帖8万条的能力,在体系结构上要具有先进性,可扩展性。本论文将结合此项目展开。

二、国内外情况

【国外情况】

国外的论坛始于19xx年,从最初的PC BBS逐步发展为Internet BBS,其涉及到的技术也空前宽泛,从硬件体系结构的设计,程序设计模式,组件及中间件产品,到编程语言的推陈出新,数据库的设计、优化等等。

【国内情况】

国内的论坛诞生于在19xx年,目前活跃的网络论坛包括新华网的发展论坛、统一论坛、人民网的强国论坛、中青在线的中青论坛等。还有一些人气未必很高 1

但声望不低的专业类论坛。IT方面有新浪IT业界论坛和DONEWSIT写作社区,摄影类有第三只眼和江湖色论坛,文学类有橄榄树和诗生活等。

由于近年来国内的Internet发展很快,所以国内关于WEB服务方面的研究很多,涉及面也很广。其中很多研究都能为提高论坛性能和负载能力所借鉴。 ? 体系结构设计

在20xx年《计算机应用》上刊登的《基于WEB应用信息集成系统的网络架构研究》一文中,作者将传统的两层C/S结构同三层B/S结构的网络模型进行了比较,详细阐述了三层B/S结构的优点和Web与数据库的互连技术,并以此为依托提出了SF-PDM(产品数据管理系统)的网络构架。由于该系统是我国863/CIMS应用示范工程SF-CIMS(863-511-910-043)项目1,所以对我国基于WEB应用信息集成系统的网络架构具有指导意义。

? 用户行为分析

在20xx年《哈尔滨工业大学学报》上刊登的《基于BBS的网络交往特征》一文中,作者以“工大论坛”为调查对象,通过使用样本矩阵的分析方法来研究BBS的交往特征,并以规模、密度、凝聚度、点出度、点入度、连接度2等为研究变量详细分析了在BBS电子空间中进行交往的成员在交往规模、交往连接方式等方面具有的特质。虽然论文是从社会科学研究的角度出发,但它同时也为收集论坛帖子的访问密度,论坛用户的访问特质,并以此为依据进而制定系统缓存的策略提供了有益的研究方法。

? 缓存策略分析

由于适当的缓存策略对于提高网络带宽的利用率,改善网络性能具有十分重要的意义,所以关于这方面的研究非常多。早在19xx年的《东北大学学报》上就刊登了《基于HTTP协议的动态页面缓冲技术的研究》的论文,在分析了HTTP协议的缓冲机制及WWW 服务器中动态页面的主要特点的基础上,提出了一个基于实体标签的动态页面缓冲算法3。在同年的《计算机研究与发展》上也刊登了《在分析用户访问行为基础上实现代理缓存》的论文,文中提出一个描述WWW 结构的网站图Site2Graph 模型, 在此基础上进行用户访问行为分析, 从而提出了一个1

2 《基于WEB应用信息集成系统的网络架构研究》 《基于BBS的网络交往特征》

3 《基于HTTP协议的动态页面缓冲技术的研究》

2

考虑实际访问请求模式的代理缓存系统U RAC。文中详细描述了U RAC的工作原理, 对代理缓存设计时所要解决的命中率、一致性和替换算法等主要问题进行了讨论, 并给出了性能分析, 得到U RAC以提高命中率和降低访问延迟为目标是一个更加实用的代理缓存系统的结论4。

关于缓存的论文还有许多,它们都从不同的角度对缓存技术进行了阐述和研究,但具体结合论坛的特点进行的研究还不很深入。

? 系统性能分析

随着Internet的应用领域和应用规模的快速增长,对网络系统的性能进行评估和预测,显得日益重要。在以往的文献中,有关网络性能分析的文章主要是着重在协议或算法性能的分析方面,例如对控制算法改进程度的评估,或是利用某种协议对特定网络应用支持的尝试等等,而对实际或设计的网络本身的总体性能指标,以及网络对各种应用的支持性能的研究还比较欠缺5。

对于论坛而言,仿真是研究系统性能的重要方法之一,但其应用范围目前较多地局限于协议仿真。而运用仿真技术进行系统性能指标分析,辅助网络设计、建设等各阶段工作所做的努力还不够多,相应的文献也比较少见。

《计算机工程与应用》上刊登的《网络仿真在网络性能指标评价中的应用》中介绍的网络性能指标、网络性能评价的仿真实验设计方法等对于对大容量新华网论坛的性能评价具有一定的指导和借鉴意义。

三、课题相关工作

【体系结构的设计】

此次设计大容量新华网论坛系统的体系结构将参考三层体系结构模型,在各个层次上均考虑采用负载均衡集群,加强系统的可用性和抗负载能力,并且为将来系统的横向扩展提供足够的体系支持和发展空间。设计工作主要包括系统的层次划分、各部分的服务器选型和数量。为了增强系统的抗负载能力,考虑在WEB层引入网络缓存设备。

Web 应用程序的性能通常是通过它响应 URL 请求的速度来度量的。然而,4

5 《在分析用户访问行为基础上实现代理缓存》 《网络仿真在网络性能指标评价中的应用》

3

更广泛的性能评估应该同样包括对同时发生的请求的影响、响应请求的等待时间、处理按需增长的解决方案的可伸缩性、以及由于事务负载的增加而造成操作性能退化的程度。

任何项目的需求收集过程都应该结合操作方面,它们量化了解决方案的可接受性能标准。这些标准需要用可测量的参数来定义,比如所能够支持的特定用户数目、同时发生的请求的特定数目、或者在特定的时间段内所能完成的事务。解决方案的工程师必须确保通过总体的设计、技术的选择、解决方案组件的部署和部署的配置来满足这些非功能性的需求。

体系结构应该保证应用程序的行为和它的系统运行在一个可接受的度量范围内;同样它也必须确保解决方案的全部行为是可预测的。

Browser/Server三层体系结构是现在比较流行的系统结构,在这样的系统中,用户可以通过浏览器向分布在网络上的许多服务器发出请求。Browser/Server结构极大的简化了客户机的工作,客户机上只需安装、配置少量的客户端软件即可,服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。

在Browser/Server三层体系结构下,表示层(Presentatioon)、功能层(Business Logic)、数据层(Data Service)被割成三个相对独立的单元,它把二层Client/Server结构的事务处理逻辑模块从客户机的任务中分离出来,由单独组成的一层来负担其任务,这样客户机的压力大大减轻了,把负荷均衡地分配给了Web服务器。

现在的集群主要分为三类。一类是高可用性集群,运行于两个或多个节点上,目的是在系统出现某些故障的情况下,仍能继续对外提供服务。高可用性集群的设计思想就是要最大限度地减少服务中断时间。第二类是负载均衡集群,目的是提供和节点个数成正比的负载能力,这种集群很适合提供大访问量的 Web 服务。负载均衡集群往往也具有一定的高可用性特点。另一类是超级计算集群,按照计算关联程度的不同,又可以分为两种。一种是任务片方式,要把计算任务分成任务片,再把任务片分配给各节点,在各节点上分别计算后再把结果汇总,生成最终计算结果。另一种是并行计算方式,节点之间在计算过程中大量地交换数据,可以进行具有强耦合关系的计算。这两种超级计算集群分别适用于不同类型的数据处理工作。有了超级计算集群软件,企业利用若干台 PC 机就可以完成 4

通常只有超级计算机才能完成的计算任务6。针对集群的分类和新华网论坛的特点,此次采用的应为负载均衡集群。

【用户行为分析】

对于互联网用户行为的研究,一般可以划分成两种方法。其一是基于使用者的观察视角,采用的是对使用者的问卷调查和访谈的方法;另一种是基于网站的观察视角,采用的是对网站用户访问日志(LOG)的分析方法。

对于网站日志的分析方法,可能更适合于研究某个特定网站使用者的行为,并进而对改进网站信息组织与服务提供帮助。但在某种程度上,这一分析,特别是对用户在网站中访问路径的分析、以及用户对某些特定结果的反映,将有助于在更微观、更精确的层面上理清用户上网的基本行为。

新华网论坛的用户行为分析主要包括以下几方面的内容:用户日常访问密集时段,日常访问人数的峰值,突发事件时访问人数的峰值,用户访问频度高的页面、帖子,达到一定访问量的页面、帖子的数量等。

数据的收集可能采用的方式:

将现有的应用服务器的软件版本升级到Websphere5.0,利用其提供的工具在不影响现有系统性能的前提下,利用工具软件对用户的数据进行收集和分析;

由于将现有系统的Websphere升级到5.0存在一定系统安全和稳定方面的问题,也可能采用在需要采集数据的页面嵌入java代码的方法,此种方法工作量比较大,而且对现有系统的性能会造成一定影响;

对论坛的日志信息进行分析,此种方法工作量比较大,分析工作繁琐而且难度较大,但对现有系统的性能没有任何影响,借助日志分析软件可以简化部分工作;

完成数据收集工作以后采用的分析方法将借鉴现有的一些成功经验,具体参照参考书目中的论文,并结合论坛自身的特点,提出有论坛特色的用户分析方法。

【CACHE策略的制定】

大容量新华网论坛系统涉及到的CACHE包括两部分:网络高速缓存设备,应用服务器本身的内存。制定这两部分CACHE策略的依据有所不同,前者要依6 /news/2002/08/06/04.html

5

据帖子被访问的频度,而后者则主要与用户的上站、发帖等信息相关。

“一次取来,多次使用”,将网络中大量重复数据的交换最小化,提高网络效率并提高对用户服务的质量,这是缓存策略的根本目的。

现在的高速缓存设备的服务模式常分为主动模式和被动模式。主动模式是指根据事先设置的策略预先把要访问站点的内容缓存到本地,用户获得的数据都是已经被缓存的内容,但不一定是原始服务器最新的内容,这种方式类似镜像功能。被动模式是指有用户请求时高速缓存服务器才代表用户向原始服务器请求数据,并且缓存,供下一个访问的用户使用。这种方式的特点是每当用户发出请求时,高速缓存服务器都去原始服务器比较,如果原始服务器的内容与缓存的内容不一致,就只取更新部分的数据,如果原始服务器的内容没有变化,就不在重取,直接从本地高速缓存服务器中读出并发送给用户。例如一个新闻页面,如果只更新了一条新闻,那么只会从原始服务器取回更新的信息,其他部分则由高速缓存服务器获得,这样就减少了已有数据的重复传输。这种模式有比较强的实时性,比较符合新华网论坛系统的需求。

高速缓存设备根据加速对象的不同,又分为正向代理(Forward Proxy)和反向代理(Reverse Proxy)两种模式。加速内部网用户对外部网络资源的访问速度的高速缓存服务器被称之为正向代理。正向代理的高速缓存服务器处于网络中网关的位置,靠近客户端,对所有的用户提供缓存服务,这是我们大多数使用的模式。如果高速缓存服务器用于加速Web站点,一般被称之为反向代理或反向加速。反向代理处于服务提供商方,靠近Web服务器一端,用户的请求主要通过高速缓存服务获得。此时的高速缓存服务器类似一台Web服务器,也是TCP 80端口接受HTTP请求。由于高速缓存服务器I/O操作的运行机制与Web服务器不一样,性能要大大高于Web服务器。反向加速可减低Web服务器的负荷,提高Web服务的响应速度,增加网站可通过的流量。本次新华网论坛系统采用的应为反向代理模式。

应用服务器本身的内存主要用于缓存在线用户的信息,最新的帖子附件等内容,为提高各应用服务器之间的内容同步速度提供保障。缓存开得太大,可能会影响应用服务器上其它应用程序的运行;开得太小,应用服务器会因为同步进程频繁读写硬盘而不堪重负,所以这部分缓存的策略要根据新华网论坛用户的行为 6

来制定。用户行为主要涉及到日常访问密集时段,日常访问人数的峰值,突发事件时访问人数的峰值等,这需要一段时间的采集。在中间件软件WEBSPHERE上可以方便的对服务器的动态高速缓存大小进行设置。

由于大容量新华网论坛的缓存策略与用户分析的工作息息相关,所以这部分工作要在用户分析完成后,以分析结果为依据进行。

【应用层集群数据的同步】

应用层上的硬件集群可以实现系统的负载均衡,提高系统的抗负载能力和安全性,但针对大容量的新华网论坛系统而言也带来了一个问题,那就是分布在不同服务器的一些实时信息应该如何在最短的时间内实现同步,同步的依据是什么以及同步应该采用哪些策略。另外也要考虑同步的安全机制,即当同步请求的响应方(主)发生故障时,同步的请求方(从)要自动转换角色,成为同步请求的响应方,并确保故障机恢复后,原主机实现主从转换,同步机制仍能正常进行。 在中间件软件Websphere中提供了一定的集群同步功能,但对于缓存中的大对象信息等,它就表现得无能为力了。为了实现应用层集群数据的同步,需要为新华网论坛专门开发用于进行数据同步的程序,制定数据同步的策略,这也是本次论文研究的一个重要内容。

【系统的测试】

新华网论坛系统的测试工作主要涉及功能测试、性能测试、可用性测试和安全性测试。

一、功能测试

按需求书的相关要求对论坛的新功能进行测试,测试的重点包括用户浏览、用户发帖、斑竹管理等方面。

二、性能测试

性能测试是论文工作的一个重点内容,主要进行连接速度测试,负载测试和压力测试,采用测试软件和实际运行相结合的方式进行,其中并发性测试是重点。 并发性能测试的目的主要体现在三个方面:以真实的业务为依据,选择有代表性的、关键的业务操作设计测试案例,以评价系统的当前性能;当扩展应用程序的 7

功能或者新的应用程序将要被部署时,负载测试会帮助确定系统是否还能够处理期望的用户负载,以预测系统的未来性能;通过模拟成百上千个用户,重复执行和运行测试,可以确认性能瓶颈并优化和调整应用,目的在于寻找到瓶颈问题。 由于大容量论坛系统的性能优劣说到底要看在高并发访问的情况下,系统是否仍能正常、快速的提供响应,所以并发性能测试是系统测试的重中之重。由于仅仅依靠测试软件并不能完整模拟论坛的情况,所以性能测试还要结合真实环境进行。

三、可用性测试

可用性测试包括导航测试、图形测试、内容测试和整体界面测试。

四、安全性测试

对于新华网论坛而言,安全性非常重要。此次安全性测试区域主要有:

(1)测试有效和无效的用户名和密码,要注意到是否大小写敏感,可以试多少次的限制,是否可以不登陆而直接浏览某个页面等。

(2)是否有超时的限制,也就是说,用户登陆后在一定时间内(例如15分钟)没有点击任何页面,是否需要重新登陆才能正常使用。

(3)判断用户是否恶意灌水、恶意登陆等。

四、研究方法与技术路线

【研究方法与步骤】

本项目的研究主要采用分析研究、实验研究等方法。

对于CACHE策略制定方面的研究,将结合用户访问行为的特点(如访问时段,单日最高在线等),采用分析的研究方法。

对于系统的测试和性能分析,采用实验研究的方法。

研究步骤如下:

20xx年9月-20xx年12月,收集资料,阅读参考文献,完成体系结构的设计与搭建

20xx年1月-20xx年3月,收集现有论坛关于用户行为的统计信息并加以分析,确定CACHE的大小、缓存的策略等相关内容

20xx年4月-20xx年6月,实现应用层集群的软件开发工作,使各应用服务 8

器的数据同步与中间件软件相脱离

20xx年7月-20xx年10月,对完成的系统进行测试和性能分析,找出系统瓶颈,为今后的系统扩展提供依据

20xx年11月-20xx年12月,对各个阶段完成的论文初稿进行修改和完善,完成毕业设计的论文并准备答辩

【关键技术】

分布式的三层体系结构

高速缓存策略

JAVA技术

J2EE构架

ORACLE数据库技术

WEB SERVICE技术

计算机系统性能评价

五、参考书目

1. 《基于WEB应用信息集成系统的网络架构研究》,曹伟生、许映秋、钱进,

《计算机应用》20xx年

2. 《基于BBS的网络交往特征》,白淑英,《哈尔滨工业大学学报》第4卷第3

期,20xx年9月

3. 《基于HTTP协议的动态页面缓冲技术的研究》,曹斌、张霞、刘积仁,《东

北大学学报》第20卷第2期,19xx年4月

4. 《在分析用户访问行为基础上实现代理缓存》,庄伟强、李昶、王鼎兴、郑

纬民、沈美明,《计算机研究与发展》第36卷第11期,19xx年11月

5. 《网络仿真在网络性能指标评价中的应用》,杜炜,王行刚,《计算机工程与

应用》20xx年18期

6. 《Oracle8i DBA宝典》,赵艳勤、刘冠英、秦玉杰等译,冯燕奎 审校,电子

工业出版社,20xx年5月第2次印刷

7. 《WWW业务访问特性分布研究》,郝沁汾、祝明发、郝继升,计算机研究 9

与发展第38卷第10期,20xx年10月

8. 《基于网络性能的智能Web加速技术——缓存与预取》,金志刚、张 钢、舒

炎泰,计算机研究与发展第38卷第8期,20xx年8月

9. 《基于HTTP协议的动态页面缓冲技术的研究》,曹斌、张霞、刘积仁,计

算机研究与发展第20卷第2期,19xx年4月

10. 《Java Enterprise最佳实践》,The O'Reilly Java Authors,中国电力出版社 2003

年9月

11. 《应用Java API开发Web Services》,Jay Foster,中国水利水电出版社,2003

年7月

12. 《IBM WebSphere Application Server实用大全》,Ron Ben-Natan,清华大学

出版社,20xx年3月

13. 《Java 2教程(第五版)》,Peter van der Linden ,电子工业出版社,20xx年

1月

14. 《互联网用户上网行为分析:基于网站访问日志的初步分析》,巢乃鹏,中

国网络传播学年会论文集,20xx年5月

15. 《Java2参考大全》,Herbert Schildt著 张玉清 吴溥峰等译,20xx年01月第

1版

16. 《集群系统负载均衡策略分析与研究》,李双庆,古平,程代杰,《计算机

工程与应用》20xx年19期

17. 《可扩展并行Web服务器集群的实现技术》,陈华平,孙清扬,《计算机工程

与应用》20xx年03期

18. 《基于热点内容的下载服务Web 集群动态负载均衡》,陈斌全,罗省贤,《计

算机应用》第24卷第4期,20xx年4月

19. 《基于Web Services 的分布式仿真》,张涛,严利珍,《计算机仿真》第21

卷第4期,20xx年4月

20. 《基于WEB的动态信息发布系统技术研究》,王淑营,赵慧娟,《计算机应用

研究》20xx年04期

21. 《基于网络模拟的多媒体网络性能评价方法》,解永良,王行刚,杜炜,《计

算机工程》第30卷第3期,20xx年2月

10

更多相关推荐:
系统设计实验报告内容

实验项目案例名学生饭卡管理系统一实验目的能够正确运用系统设计的过程与方法结合一个模拟课题复习巩固管理信息系统中系统设计知识提高系统设计实践能力熟悉代码设计数据存储设计输入输出设计等环节并编制相应的文档及程序编写...

学生信息管理系统设计报告的主要内容(S)

学生成绩管理系统设计报告的主要内容大作业设计报告的书写学生成绩管理系统的设计一系统设计1系统功能模块分析学生成绩管理系统通常包括学生基本信息管理学校所开设课程情况和成绩的管理设计学生管理系统的目的就是利用计算机...

系统总体设计报告

系统总体设计报告一引言11编写目的本系统为地震灾害预警系统主要用户为政府部门工作人员在地震来临前有效地预测地震在地震发生后尽快高效地组织灾后救援重建工作通过本设计报告与用于进行深入交流进一步挖掘用户需求12项目...

数据库系统设计实验报告

数据库系统设计实验报告课程数据库系统原理与应用姓名刘晨专业13级计本班学号1307020xx029指导老师王端理一数据库系统设计一实验目的掌握数据库设计的基本技术熟悉数据库设计的每个步骤中的任务和实施方法并加深...

操作系统课程设计报告

课程设计说明书设计名称操作系统课程设计题目文件访问接口设计学生姓名陈小浪专业计算机科学与技术班级12级1班学号20xx314118指导教师任朝晖日期20xx年9月15日佛山科学技术学院课程设计用纸课程设计任务书...

学生信息管理系统总体设计报告

名级导老师张软件曹丽娜班路姓班1108指目录目录1引言2总体设计3接口设计4运行设计5系统数据结构设计6系统出错处理设计7数据库设计说明书8用户手册9测试计划138101112131516学生信息管理系统1引言...

学生管理系统设计报告

课程设计报告学生姓名学院班级题目蕫臣智学号20xx307020xx9自动化工程学院测控112学生信息管理系统指导教师张秀宇职称系主任20xx年6月目录第一章绪论111课题意义112设计任务与要求2122课程设计...

管理信息系统课程设计报告书

课程设计报告书题目企业库存系统开发报告书院系20xx年6月2日开发背景介绍企业的库存物资管理往往是很复杂很繁琐的由于所掌握的物资种类众多订货管理发放的渠道各有差异各个企业之间的管理体制不尽相同各类统计报表繁多因...

数据库设计报告 学生信息管理系统

HEFEIUNIVERSITY数据库设计报告系别专业班级学号姓名指导老师完成时间电子信息与电气工程系电气信息类09级电气3班20xx年5月10日0905073012学生信息管理理系统数据库设计报告班级09电气信...

图书馆管理系统数据库设计报告

图书馆管理系统数据库设计报告课程设计名称:图书馆管理系统班级:12级1班专业:网络工程任课教师:许老师学号:姓名:实验日期:20##年12月21日姓名实验报告成绩78评语:指导教师(签名)年月日说明:指导教师评…

数据库系统设计实验报告

数据库系统设计实验报告教务管理系统数据库系统设计实验报告教务管理系统学院计算机科学与技术专业软件工程班级学号姓名指导老师1数据库系统设计实验报告教务管理系统一概述项目背景数据库课程设计系统名称教务管理系统开发环...

网络系统集成设计报告

目录一网络系统设计背景2二管理学院网络设计需求分析2一二功能需求2系统运行需求3三网络规划设计总体方案3一二网络设计基本原则3网络规划5四综合布线设计8一二管理学院大楼8具体布线系统8五局域网设计17六服务器选...

系统设计报告的内容(16篇)