本科毕业设计(论文)
外文翻译
用JSP和PHP实现动态Web服务器的性能分析和仿真建模
作者:Fontaine Rafamantanantsoa*, Paulson Ravomampiandra
国籍:美国
出处:Communications and Network, 2018, 10, 196-210
摘要:近几年,网络技术在不断发展的同时,互联网用户的数量也在显著增加。今天,Web服务器每天能够处理数百万个请求,但是在高峰期间仍可能会崩溃,这成为导致服务器提供的服务不可用的关键因素。这就是为什么Web服务器性能是许多研究人员非常感兴趣的一个主题。在本文中,我们通过实验评估了JSP和PHP动态内容技术的影响:JSP和PHP访问Apache Web服务器性能数据的数据库。通过使用“ApacheBench”性能测量工具的方法去比较Web服务器的四种不同配置的性能,例如:Apache Web服务器通过JSP技术访问PostgreSQL数据库;Apache通过PHP技术访问PostgreSQL数据库;Apache Web服务器使用JSP技术访问MySQL数据库;最后Apache通过PHP技术访问DBMS MySQL。在本文的最后,我们还提出了一个基于简单M / M / 1队列的Web服务器性能的Simulink模型,并使用MATLAB软件进行建模。
关键词:分析,队列,JSP,模型,性能评估,PHP,Web服务器,Simulink
1.介绍
近几十年来,互联网用户的数量并没有停止增加。根据一些研究,2012年与互联网连接的用户统计数据增加了超过23亿,而全球居民数量接近70亿;三分之一的人口连接到互联网。2012年11月,Netcraft调查显示全球有625,329,303个有效网站。 即使Web服务器现在每天能够处理数百万个请求,但在高峰期它的性能可能还是会崩溃,因此服务器的性能变得越来越重要。因此,这种粗略定位的用户会牺牲服务器提供的服务质量。因此,许多研究人员对计算机系统的性能进行了研究,即:直接测量,模拟和建模。直接测量是一种精确的方法,但它需要一个真实的系统来收集有关系统性能指标的特定信息。仿真是真实系统的原型,可以提供具有或多或少准确结果的性能测量,但可能难以构建。至于建模,我们使用的技术包括:网络队列,马尔可夫模型,Petri网和神经网络。建模是最便宜的方法,因为现在个人计算机硬件更难以负担。
这三种方法也被各种研究人员用于研究Web服务器性能。在[1]和[2]中,作者分别考虑了队列M/G/1/K*PS和M/M/1/K来评估Web服务器的性能。在他们的工作中,他们研究了诸如流量到达和服务规范等参数对性能指标的影响,例如:平均Web响应时间、吞吐量和服务器拒绝率。其他研究人员,如R.Fontaine等人,在[3]中使用其他方法,即神经网络,对ApacheWeb服务器的性能建模。为此,利用梯度传播算法,利用神经网络的三种模型预测Web服务器的性能指标,如平均响应时间、拒绝率和流量,这些指标取决于系统内核参数FreeBSD、Apache和入站流量的优化。2011年,[4]也做了同样的工作,但他们使用的操作系统是Debian和Ubuntu Linux 9.4。许多研究都集中在Web服务器的分析和设计上,以确定构成瓶颈的元素。在[5]中,Rafamantanantsoa和Aussem使用Webstone来分析apache Web服务器的性能。他们研究了影响服务器性能的不同因素,例如:Apache优化参数(Maxclients、MaxUsers)和FreeBSD操作系统(例如Somaxconn)。在本文的最后,他们提出了一个基于队列的简单模型,该模型使用均值分析(MVA)算法来表示饱和Web服务器的行为。胡等人还测量并分析了Apache的行为。作者使用基准测试工具SpecWeb96和Webstone来评估Web服务器在系统单处理器和多处理器(4-CPU SMP(对称多处理器))上的行为。
最近,Xiao和Dohi[6]使用Apache JMeter工具对Apache性能进行了定量评估。确切地说,它们关注Apache Web服务器的错误率与可能影响Apache性能的系统参数之间的关系。
我们在上面介绍的工作仅仅关注静态工作负载的使用,但是互联网的发展已经导致其他研究者考虑基于动态Web页面的工作负载。特伦特等人在他们的工作中,他们着重于使用Lighttpd和Apache Web服务器上的SPECWeb2005比较动态语言PHP和JSP脚本。他们的结果表明,这两种技术在速度和性能上只有5% -10%的差异。2012年,Aaqib和Sharma在[8]中使用MySQL数据库对Apache实现PERL、PHP和Java Servlet技术的性能进行了测试。他们的目标是确定这三种技术中哪一种能在Windows和Linux平台上提供更好的结果。他们的结果表明,使用PHP时的性能比使用PERL和Java Servlet时要好得多。他们开发了一个多元线性回归模型来预测Web服务器的性能,以验证他们的结果。在本文中,我们将分析和模拟Apache Web服务器分别与JSP和PHP技术相结合的性能。本文分为四个部分,第一部分介绍Web服务器的性能度量,第二部分将给出实验配置,第三部分将展示各种实验的结果,在最后一部分中,我们将提供关于服务器性能的模型。
2.Web服务器性能
Web服务器是处理同时进行的许多类型的客户机请求的系统。 这些查询可以指向到不同大小的静态文件,动态网页,CGI命令或通过各种API访问数据库。服务器对这些请求的处理与其他请求不同。因此,查询的处理时间取决于应用程序的复杂性、文档大小和服务器的速度。后者还取决于组成服务器的硬件(CPU、RAMhellip;hellip;)和配置软件。
为了测量Web服务器的性能,使用已知性能度量或性能指标的度量单位。这些是描述Web服务器的定量行为的关键指标。这些索引可能会根据研究的类型、性质和Web服务器配置而有所不同。在性能指标中,衡量Web服务器性能的基本单位为:
响应时间:该值显示应用程序的平均执行时间,也就是说,客户端发送请求之后直到从服务器获得响应的时间;
每秒处理的请求数:衡量Web服务器在一段时间内管理的请求数;
错误数:由于收到大量请求而被服务器拒绝的应用程序。
3.绩效评估方法
作为我们研究的一部分,我们将针对每个实验检查Web服务器的四种不同配置。 图1显示了实验过程中的各种配置。
首先,我们在动态网页上对扩展名为*.jsp和*.php发送查询。每个HTTP请求都会导致一个SQL SELECT命令从数据库PostgreSQL或MySQL检索数据。接下来,我们更改要从数据库检索的数据的大小,以便确定数据大小对服务器性能的影响。对于图1中所示的每个配置,我们改变数据的大小,以获得20、40、60、80和100个字节。PostgreSQL和MySQL数据库都有一个包含四列的表。
图一.绩效衡量方法
我们注意到在实验期间我们只使用了SQL SELECT命令,并没有使用任何其他SQL命令,如INSERT,UPDATE和DELETE,因为大多数时候,Web用户只查阅Web服务提供的各种文档。
我们在实验中使用的动态工作负载的特征如表1所示。
表1.实验期间的工作量
规范 |
工作量 |
|
JSP |
PHP |
|
文件数量 |
16 |
16 |
文件总大小 |
5 Mo |
5 Mo |
PgSQL和MySQL中的总数据大小 |
600 Octets |
4.实验环境
在实验中,我们使用两台机器,一台作为服务器,另一台作为客户机设备生成对服务器的请求。服务器和客户端机器通过交叉电缆RJ45互连。本节的其余部分提供了此实验环境的详细信息。4.1节显示了我们实验环境的硬件配置,4.2节介绍了我们使用的软件。
4.1.硬件要求
我们使用的客户端计算机是戴尔计算机,具有单个Intel Pentium IV处理器,256 MB RAM和20 GB IDE硬盘驱动器。至于服务器机器,宏碁品牌配备英特尔酷睿i5处理器、8gb内存和1tb SATA硬盘。Acer品牌采用Intel Core i5处理器,配备8GB RAM和1TB SATA硬盘。值得注意的是,这个服务器计算机不是专用的Web服务器; 它是一个使用Windows 7以双引导方式运行Apache的系统。表2总结了实验期间使用的服务器和客户端计算机的配置。
表2.所用材料的特性
服务器 |
客户 |
|
处理器 |
Intel Core i5 |
Intel Pentium IV |
主记忆 |
8 Go |
256 Go |
硬盘 |
50 Go |
20Go |
4.2.软件配置
我们使用Pear Linux OS8发行版作为服务器的操作系统,使用Debian 6作为客户的操作系统,并使用了Linux的默认内核参数。此外,操作系统的配置保留默认值。表3总结了实验中使用的各种软件。
表3.使用的软件的特征
服务器 |
客户 |
|
操作系统 |
Pear Linux OS |
Debian 6 |
Web服务器 |
Apache2.2 |
|
RDBMS |
-PostgreSQL -MySQL |
|
工具 |
Top |
ApacheBench |
对于所有使用的软件,设置优化保留其默认值。
4.3.实验设置
图2显示了用于获取用于建模Apache Web服务器性能的数据的实验设置。
图2.实验设置
E[S]是Web服务器的平均服务时间,即从客户机请求到达服务器到服务器准备向客户机发送响应之间的时间。E[S]可以通过计算查询的响应时间输出与服务器上请求的到达时间之间的差值来计算。
实验过程如下:从安装了Python和Scapy开发工具的机器发送请求。 请求来自第一个网络接口,IP地址为192.168.1.151。 Web服务器在其第一个网络接口上接收192.168.1.150作为IP地址。处理完请求后,响应将通过IP地址为192.168.2.150的第二个服务器网络接口返回给客户端,客户端计算机在其第二个网络接口上使用IP地址192.168.2.151接收此响应。
我们使用了与前面几节相同的材料。通过一系列实验,收集了支持JSP技术和数据库访问的Apache Web服务器的性能指标。在本节中,我们没有使用ApacheBench工具,而是使用Python编程语言和网络包操作软件Scapy开发了Web服务器的性能度量工具。
图3显示了所开发工具的用户界面。这个GUI是由Qt4设计器执行的。
图3. GUI工具
工具描述
- 服务器IP:用于指示要
剩余内容已隐藏,支付完成后下载完整资料
英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[273081],资料为PDF文档或Word文档,PDF文档可免费转换为Word
课题毕业论文、文献综述、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。
您可能感兴趣的文章
- 超过25年的缺陷极值统计:基本原理,历史发展,最近的应用外文翻译资料
- 固定汇率和灵活汇率下的资本流动和稳定政策外文翻译资料
- 固定和灵活汇率下国际调整的货币动态外文翻译资料
- 关税优惠与贸易条件经典模型的推广外文翻译资料
- 特征值/特征向量在工程中的应用外文翻译资料
- 运用反问题对古气候定量重建: 由泥炭纤维素氧同位素δ8o指标对青藏高原东部 全新世晚期气候作贝叶斯推断外文翻译资料
- 第151章 ASP。NET开发电子商务智能订餐系统外文翻译资料
- 用于1维Burgers和KDV方程的通用有限谱方法外文翻译资料
- 具有随机波动率的时变参数回归模型的半参数贝叶斯推断外文翻译资料
- 用于特征选择的梯度Lasso外文翻译资料