登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 外文翻译 > 理工学类 > 信息与计算科学 > 正文

基于JSP和PHP的动态Web服务器性能分析与仿真建模外文翻译资料

 2022-11-11 03:11  

英语原文共 15 页,剩余内容已隐藏,支付完成后下载完整资料


基于JSP和PHP的动态Web服务器性能分析与仿真建模

Fontaine Rafamantanantsoa*, Paulson Ravomampiandra

University of Fianarantsoa, Fianarantsoa, Madagascar

摘要:近年来, 网络技术不断发展, 与此同时网民数量显著增加. 如今, Web服务器每天能够处理数百万个请求, 但在高峰时期可能会崩溃, 并成为导致服务器提供的服务不可用的关键因素. 这就是为什么Web服务器性能是许多研究人员非常感兴趣的话题. 在本文中, 我们通过访问ApacheWeb服务器的性能数据数据库, 对JSP和PHP动态内容技术(JSP和PHP)的影响进行了实验评估. 使用“apachebench”性能度量工具, 比较了Web服务器的四种不同配置的性能, 如:实现JSP技术的Apache Web服务器与PostgreSQL数据库的访问、使用PHP技术的Apache与PostgreSQL数据库的访问、使用JSP技术的Apache Web服务器与WI访问MYSQL数据库, 最后访问apache和PHP与dbms MYSQL. 在本文的最后, 我们还提出了一个基于简单M/M/1队列的Web服务器性能模拟模型. 在建模过程中, 使用了matlab软件.

关键词:分析, 队列, JSP, 模型, 性能评价, PHP, Web Server, Simink

1. 介绍

近几十年来, 互联网用户数量没有停止增长. 据一些研究显示, 2012年, 与世界上接近70亿的居民相比, 互联网用户的统计数字增长了23多亿;三分之一的人口与互联网相连. 2012年11月, Netcraft调查统计了全球625329303个活跃网站. 尽管Web服务器现在每天能够处理数百万个请求, 但在高峰时期, 它的性能可能会崩溃并变得至关重要. 因此, 这种粗糙的位置用户会降低服务器提供的服务质量. 因此, 许多研究人员对计算机系统的性能进行了研究, 即:直接测量、仿真和建模. 直接测量是一种精确的方法, 但它需要一个真实的系统来收集有关系统性能指标的特定信息. 仿真是真实系统的原型, 可以为性能测量提供或多或少精确的结果, 但很难建立. 在建模方面, 采用了网络队列、马尔可夫模型、Petri网和神经网络等技术. 建模是最便宜的方法, 因为现在个人电脑硬件更难以负担.

这三种方法也被研究Web服务器性能的各种研究人员所使用. 在[1]和[2]中, 作者分别考虑了队列m/g/1/k*ps和m/m/1/k来评估Web服务器的性能. 在他们的工作中, 他们研究了诸如流量到达和服务规范等参数对性能指标的影响, 例如平均Web响应时间、吞吐量和服务器拒绝率. 其他研究人员, 如R. fontaine等人[3]使用其他方法(即神经网络)对ApachheWeb服务器的性能进行了建模. 为此, 利用梯度传播算法, 采用三种神经网络模型对网络服务器的性能指标进行预测, 如平均响应时间、拒绝率和流量等, 这取决于系统内核参数freebsd、apache和入站流量的优化. 2011年, [4]也做了同样的工作, 但他们使用的操作系统是Debian和UbuntuLinux9. 4. 许多研究集中在Web服务器的分析和设计上, 以识别构成瓶颈的元素. 在[5]中, Rafamantantsoa和Aussem使用Webstone分析了ApacheWeb服务器的性能. 他们研究了影响服务器性能的不同因素, 例如:Apache优化参数(MaxClients、MaxUsers)和FreeBSD操作系统(例如SomaxConn). 在本文的最后, 他们提出了一个简单的基于队列的模型, 用均值分析(MVA)算法来表示饱和Web服务器的行为. 胡适等人. 并对Apache的行为进行了测量和分析. 作者使用基准工具specWeb96和webstone评估了系统单处理器和多处理器(4-cpussmp(对称多处理器))上Web服务器的行为. 最近, Xiao和Dohi[6]使用ApacheJMeter工具定量地评估了Apache的性能. 具体地说, 它们关注的是ApacheWeb服务器的错误率与可能影响Apache性能的系统参数之间的关系. 我们上面介绍的工作只关注静态工作负载的使用, 但互联网的发展促使其他研究人员考虑基于动态网页的工作量. 特伦特等. [7]在他们的工作中, 他们着重于使用specweb2005在lighttpd和apache Web服务器上比较动态语言PHP和jsp脚本. 结果表明, 这两种技术在速度和性能上只有5%-10%的差异. 在2012中, AAQIB和夏尔马(8)测量了Apache实现Perl、PHP和Java Servlet技术的性能, 并使用MYSQL数据库. 他们的目标是确定这三种技术中的哪一种在Windows和Linux平台上产生更好的效果. 他们的结果表明, 用PHP获得的性能比使用Perl和JavaServlet要好得多. 他们开发的多元线性回归模型用于预测Web服务器的性能, 以验证其结果. 本文将结合JSP和PHP技术对ApacheWeb服务器的性能进行分析和建模. 本文分为四个部分. 第1节介绍Web服务器的性能指标. 实验配置将在第2节中给出. 第三部分将展示各种实验的结果. 在最后一节中, 我们将提供有关服务器性能的模型.

2. Web服务器性能

Web服务器是一个系统, 它处理同时进行的多种类型的客户端请求. 这些查询可以指向不同大小的静态文件、动态网页、CGI命令或通过各种API访问数据库. 服务器对这些请求的处理与其他请求不同. 因此, 查询的处理时间取决于应用程序的复杂性、文档大小和服务器的速度. 后者还取决于构成服务器的硬件(CPU、RAMhellip;)和配置软件. 为了测量Web服务器的性能, 使用已知的性能度量单位或性能索引. 这些是描述Web服务器定量行为的关键指标. 这些索引可能因所研究的Web服务器配置的类型、性质而有所不同. 在性能度量中, Web服务器性能的基本度量单位是:响应时间:该值显示应用程序的平均执行时间, 即客户端发送请求直到从服务器收到响应的时间;每秒处理的请求数:是r的数量的度量. 由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所示.

4. 实验环境

在实验过程中, 我们使用了两台机器, 一台充当服务器的机器和另一台向服务器生成请求的客户机设备. 服务器和客户机通过交叉电缆RJ45相互连接. 本节的其余部分提供了这个实验环境的详细描述. 第4. 1节给出了我们实验环境的硬件配置, 第4. 2节给出了我们使用的软件.

4. 1硬件要求

我们使用的客户机是一台带有单个IntelPentium IV处理器、256 MB RAM和20 GB IDE硬盘的戴尔计算机. 至于服务器, 这是一个采用Intel Core i5处理器、8GB RAM和1TB SATA硬盘的宏基品牌. 请注意, 服务器机器不是专用的Web服务器;它是Apache在Windows7的双引导中运行的系统. 表2总结了实验期间使用的服务器和客户机的配置.

4. 2软件配置

我们使用PearLinuxOS8发行版作为服务器操作系统, 使用Debian6作为客户操作系统. 我们使用了Linux的默认内核参数. 操作系统的配置也保持在默认值. 表3总结了持续实验所用的各种软件. 对于所使用的所有软件, 安装优化都保留为其默认值.

4. 3实验设置

图2显示了用于获取用于模拟ApacheWeb服务器性能的数据的实验设置.

表1. 实验期间的工作量.

规范

工作负荷

JSP

PHP

文件数

16

16

文件总大小

5Mo

5Mo

pgsql和MYSQL总数据大小

600Octets

表2. 所用材料的特性.

服务器

客户端

处理器

IntelCorei5

IntelPentiumIV

主内存

8Go

256Mo

硬盘

50Go

20Go

表3. 所用软件的特征.

服务器

客户端

操作系统

pear linuxos

debian 6

web 服务器

apache2. 2

rdbms

-PostgreSQL-MYSQL

工具

top

apachebench

图1. 性能测量方法.

图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技术和数据库访问的ApacheWeb服务器的性能指标. 在本节中, 我们没有使用apachebench工具, 但是我们使用python编程语言和名为scapy的网络包操作软件开发了一个Web服务器的性能度量工具. 图3显示了开发工具的用户界面. 这个图形用户界面是由qt4设计师设计的.

工具说明

Server IP:用于指示要测试的Web服务器的IP地址.

Competitors:用来表示同时访问服务器提供的资源的用户数.

Request:它允许指定在每个性能测试期间运行的查询总数.

URL:允许您指示在测试期间检索客户的网页的绝对路径.

图3. 图形用户界面工具

“开始”按钮用于启动Web服务器性能测试. 对于清除按钮, 用于清除实验结果的显示区域. 我们使用这个工具来运行性能测试. 文档的大小从20字节到100字节不等, 分20个步骤. 对于每个值, 该工具检索Web服务器性能的指标. 作为测试的结果, 在测量服务器的时间时特别有用.

5实验结果

通过一系列的测试, 对网络服务器的性能进行了测试. 各种测试包括在客户端机器上运行的Apachebench, 每个测试后的工作负载如表1所示. Apachebench工具收集有关各种性能指标的统计信息, 例如平均响应时间、错误数.

Linux的“top”工具允许监视服务器机器上的系统资源. 监控资源是:内存和CPU.

对于每个实验, 我们将建立数据大小和平均响应时间之间的关系. 为了正确地组织这一部分, 我们将展示各种测试的结果, 如下所示:

实验1:访问数据库表的第一列.

实验2:访问数据库

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[18866],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图