web服务器比较(IIS,Tomcat,Apache,Resin )

本文涉及的产品
性能测试 PTS,5000VUM额度
简介:

1、IIS

http://www.86un.com/Article/ShowArticle.asp?ArticleID=228

Internet Information Server是许可在大众Intranet或Internet上公布信息的Web办事器

首 先,Internet Information Server的缩写为(IIS)是一个World Wide Web server。Gopher server和FTP server全数包涵在内里。 IIS意味着你能公布网页,而且有ASP(Active Server Pages)、JAVA、VBscript发生页面,有着一些扩展功效。IIS撑持一些风趣的工具,象有编纂情况的界面(FRONTPAGE)、有全文检 索功效的(INDEX SERVER)、有多媒体功效的(NET SHOW)

其次,IIS是随Windows NT Server 4.0一路供给的文件和应用法式办事器,是在Windows NT Server上成立Internet办事器的根基组件。它与Windows NT Server完全集成,许可利用Windows NT Server内置的平安性以及NTFS文件体系成立壮大矫捷的Internet/Intranet站点。

2、TOMCAT

如 今,基于Web的应用越来越多,传统的Html已经知足不了现在的需求。我们必要一个交互式的Web,于是便降生了各类Web说话。如Asp,Jsp, Php等。固然,这些说话与传统的说话有着紧密亲密的接洽,如Php基于C和C++说话,Jsp基于Java说话。本文所要先容的Tomcat便是一个Jsp 和Servlet的运行平台。

Tomcat不但仅是一个Servlet容器,它也具有传统的Web办事器的功效:处置Html页 面。可是与Apache比拟,它的处置静态Html的本领就不如Apache。我们可以将Tomcat和Apache集成到一块,让Apache处置静态 Html,而Tomcat处置Jsp和Servlet。这种集成只必要点窜一下Apache和Tomcat的设置装备摆设文件即可。

基于 Tomcat的开辟实在首要是Jsp和Servlet的开辟,开辟Jsp和Servlet很是简略,你可以用通俗的文本编纂器大概IDE,然后将其打包成 WAR即可。我们这里要提到别的一个东西Ant,Ant也是Jakarta中的一个子项目,它所实现的功效近似于Unix中的make。你必要写一个 build.xml文件,然后运行Ant就可以完成xml文件中界说的事情,这个东西对付一个大的应用来说很是好,我们只需在xml中写很少的工具就可以 将其编译并打包成WAR。究竟上,在良多应用办事器的公布中都包罗了Ant。别的,在Jsp1.2中,可以操纵标签库实现Java代码与Html文件的分 离,使Jsp的维护更便利。

3、APACHE

Apache是一種免費的網站伺服器,以是也不消錢...

Apache是一種佔有率最高網站伺服器,是微軟的三倍...

Apache是一種最穩定的網站伺服器,服从好!

Apache是天下排名第一的Web办事器, 按照Netcraft(www.netsraft.co.uk)所作的查询拜访,天下上百分之五十以上的Web办事器在利用Apache. 
1995 年4月, 最早的Apache(0.6.2版)由Apache Group发布刊行. Apache Group 是一个完全经由过程Internet举行运 作的非红利机构, 由它来决议Apache Web办事器的尺度刊行版中应该包罗哪些内容. 答应任何人点窜隐错, 供给新的特性和将它移植到新的平台 上, 以及别的的事情. 当新的代码被提交给Apache Group时, 该集体考核它的详细内容, 举行测试, 若是以为对劲, 该代码就会被集成到 Apache的首要刊行版中. 
Apache 的特征: 
1) 险些可以运行在全部的计较机平台上. 
2) 撑持最新的HTTP/1.1和谈 
3) 简略并且强有力的基于文件的设置装备摆设(HTTPD.CONF). 
4) 撑持通用网关接口(CGI) 
5) 撑持假造主机. 
6) 撑持HTTP认证. 
7) 集成PERL. 
8) 集成的代办署理办事器 
9) 可以经由过程WEB欣赏器监督办事器的状况, 可以自界说日记. 
10) 撑持办事器端包罗号令(SSI). 
11) 撑持平安SOCKET层(SSL). 
12) 具有效户会话历程的跟踪本领. 
13) 撑持FASTCGI 
14) 撑持JAVA SERVLETS. 
... 
错误谬误(MAYBE IT IS, MAYBE NOT): 
APACHE没有为办理员供给图形用户接口(GUI), 但比来的APACHE版本已经有了GUI的撑持.

4、RESIN

http://www.zhirui.com/it/2004/8-5/2875.html

Resin 办事器平台先容简介Resin供给了最快的jsp/servlets运行平台。在java和javascript的撑持下,Resin可觉得使命矫捷选用 符合的开辟说话。Resin的一种进步前辈的说话XSL(XML stylesheet language)可以使得情势和内容相分手。 若是您选用jsp平台作为internet贸易站点的撑持,那么速率、价钱和不变性都是要思量到的,resin非常超卓,表示更成熟,很具备贸易软件的要 求。并且,它是全免费的。从站点下载的便是完备版本。以是值得向您保举! 相对付tomcat3.1,后者更象是一个正在研究的项目。今朝resin可以撑持sun的j2ee,而tomcat不克不及直接撑持,而j2ee是基于 java办事器端大体系的根本。但tomcat布局很是公道,并且是apache构造的产物,是以有着很好的前景。Resin1.1的特征包罗:1 撑持jsp1.1和在办事器端编译的javascript.2 比mod_perl,mod_php更快,比Jakarta Tomcat快3倍。您可以在Caucho的站点看到很周全的各类测试陈述。3 利用servlet2.2引擎。4 主动的servlet/bean编译!5 Servlet,XSL Filtering6 撑持IIS,Apache,Netscape和别的内置了HTTP/1.1的Web办事器。7 XSLT和XPath1.0引擎。8 企业级的共享软件(基于一个开放源码的和谈)安置与启动:安置出格简略,只需将resin-1.1.3.zip解压缩到某个目次即可。在运行之前必要有 jdk的撑持。启动体例是实行:resin-1.1.3/bin/httpd (在NT)体系已经根据缺省设置启动,体系将监听8080端口。jsp文件可放在resin-1.1.3/doc目次下;servlet可以放在 resin-1.1.3/doc/web-inf/classes下面。测试 从http://localhost:8080/中可以看到resin的接待界面。 下载您可以在此下载最新的Resin1.1.3。大要是2.5M。当 然,您也可以去http://www.caucho.com官方站点领会具体内容并下载resin1.1.3大概1.1.2而且看一下resin的 License

Apache与Tomcat的区别

APACHE是一个web办事器情况法式,启用他可以作为web办事器利用,不外只撑持静态网页。如:(asp,php,cgi,jsp)等动态网页的就不可。

若是要在APACHE情况下运行jsp 的话就必要一个诠释器来实行jsp网页,而这个jsp诠释器便是TOMCAT, 为什么还要JDK呢?由于jsp必要毗连数据库的话,就要jdk来供给毗连数据库的驱程,以是要运行jsp的web办事器平台就必要APACHE+ TOMCAT+JDK。

整合的益处是:
若是客户端恳求的是静态页面,则只必要Apache办事器相应恳求;
若是客户端恳求动态页面,则是Tomcat办事器相应恳求;
由于jsp是办事器端诠释代码的,如许整合就可以削减Tomcat的办事开销 。

 --------------------

相同机器 相同的环境 相同代码 下测试结果

在500客户端并发10秒,并发频率按照处理能力来计算的.下边就是10秒中内,页面访问的次数.一共压了5次

1:962

2:1872

3:2864

4:3784

5:4735

 

resin:如下

1:1134

2:1792

3:2536

4:3036

5:3606

 

在500客户端并发100秒,并发频率按照处理能力来计算的.

tomcat:7439

resin:3949

----------

用JMeter分别对tomcat apache UFO做性能压力测试结果报告

使用JMeter分别对tomcat、apache、UFO( www.gm365.com上发布的web server软件)做性能测试
一、tomcat apache UFO JMeter工具
1)这里只对JMeter做个简单的介绍
JMeter——一个100%的纯Java桌面应用,它是 Apache组织的开放源代码项目,它是功能和性能测试的工具。JMeter可以用于测试静态或者动态资源的性能(文件、Servlets、Perl脚本、Java对象、数据库和查询、ftp服务器或者其他资源)。
2)Jmeter的下载地址: http://jakarta.apache.org/jmeter/usermanual/index.html
3)Apache JMeter 的特性:
a) 能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。
b) 完全的可移植性和100% 纯Java。
c) 完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。
d) 完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。
e) 精心的GUI设计允许快速操作和更精确的计时。
f) 缓存和离线分析/回放测试结果。
g) 高可扩展性:
h) 可链接的取样器允许无限制的测试能力。
i) 各种负载统计表和可链接的计时器可供选择。
j) 数据分析和可视化插件提供了很好的可扩展性以及 以及个性化。
k) 具有提供动态输入到测试的功能(包括Javascrīpt)。
l) 支持脚本变成的取样器(在1.9.2及以上版本支持BeanShell)。
二、 JMeter可以做哪些方面的测试 
原先Jemer是为Web/HTTP测试而设计的,但是它已经扩展以支持各种各样的测试模块。它和用于HTTP和SQL数据库(使用JDBC)的模块一起运送。它可以用来测试静止资料库或者活动资料库中的服务器的运行情况,可以用来模拟对服务器或者网络系统加以重负荷以测试它的抵抗力,或者用来分析不同负荷类型下的所有运行情况。它也提供了一个可替换的界面用来定制数据显示,测试同步及测试的创建和执行。
三、具体事例
1)测试环境:
    硬件配置 软件环境
测试时间 2009 年 4 月 19 日
服务器 (R)4 256M 内存 Tomcat6.0.18  apache_2.0.63  UFO_0.9995_4_3
客户端 (R)4 256M 内存 Jmeter
测试内容 in.html 23.1kb的简单页面、输出相关信息。
2)安装启动JMeter,分别对以上软件进行压力测试
    分别测试10、25、50、75、100、200、500、1000个线程,即模拟这些数目的用户并发;每个用户循环发送请求10;Ramp-up period(inseconds)的值设为0,即并发请求。
    JMeter输出的具体结果存于附件中,为确保测试数据真实性请下载附件、查看相关信息。
    下面结果来源于附件,抽取部分如下:
tomcat的测试结果
    #Samples   Average    Median   90%Line  Min   Max     Error%   Throughput    KB/sec
           100         17               0            63          0     172      0.00%    228.8/sec     5306.5
           500        139              0            156        0     2515    0.00%    185.0/sec     4289.6
          1000        251             0            78          0     4234    0.00%    181.3/sec     4204.8
          2000       448              0            1031      0     8188     5.10%    192.2/sec     4242.7
          5000       1080          1078        1563      0     11203   50.86     253.2/sec     3056.1
模拟200个用户时压力测试,tomcat已经明显看到响应慢了,Average:448(平均响应时间0.448秒),90%Line:1031(百分之90的用户响应时间为1.031秒),出现的无法响应的概率: 5.10%。
模拟500个用户时压力测试,tomcat已经无法承受了;Error:50.86%(百分之50的请求无法响应)
apache的测试结果
    #Samples   Average    Median   90%Line  Min   Max     Error%   Throughput    KB/sec
          100           33              0            16          0     547      0.00%     163.9/sec    3801.5
          500           158            0            156        0     2812    0.00%     157.6/sec    3655.3
          1000         314            0            203        0     5859    0.00%     160.8/sec    3728.8
          2000         634            0            468        0    11922   0.00%     158.0/sec    3664.3
          5000        1460         187          6078      0    14531   15.86       200.0/sec    3944.5
模拟500个用户时压力测试,Apache平均响应时间明显慢了:1.460秒,90%的用户要6秒钟才能响应,错误率已经很高了:15.86%
UFO的测试结果
    #Samples   Average    Median   90%Line  Min   Max     Error%   Throughput    KB/sec
            100           35            16            63        0    437      0.00%     76.2/sec      1767.5
            500           44            30            63        0    4234    0.00%     93.6/sec      2169.7
            1000         37            16            62        0    3438    0.00%     108.8/sec    2524.2
            2000         54            31           141       0    3593    0.00%     123.7/sec    2867.9
            5000         48            31           109       0    4890    0.00%     123.9/sec    2872.9
           10000        58            31            94        0    5734    0.00%     128.2/sec    2973.6 
对于 www.gm365.com上发布的UFO,新软件暂时不做评论。大家有什么问题,多拿出来讨论,本次测试只是做了HTTP请求的聚合报告。具体详细内容见附件(JMeter测试.rar).
JMemter使用分析:
在测试过程中,平均响应时间是我们性能测试的一个重要衡量指标,但是在测试中,特别是在聚合报告中,得出的90%Line,我这里参考《《LoadRunner 没有告诉你的》之一——描述性统计与性能结果分析》,我认为90%Line等同于该文作者提出的90%响应时间,这个数值对我们性能测试分析也很有参考价值。90%响应时间是说在发送的请求中,90%的用户响应时间都比得到的数值上要短,同时说明,一个系统在应用时,90%的用户响应时间都能达到这个数值,那么就为系统性能分析提供了很好的参考价值。

本文转自茄子_2008博客园博客,原文链接:http://www.cnblogs.com/xd502djj/archive/2010/12/10/1902294.html,如需转载请自行联系原作者。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
目录
相关文章
|
4月前
|
缓存 NoSQL 数据库
高性能Web服务器架构设计
【8月更文第28天】在当今互联网时代,网站的响应速度直接影响用户体验和业务成功率。因此,构建一个高性能的Web服务器架构至关重要。本文将从硬件配置、软件架构以及网络设置三个方面探讨如何提高Web服务器的性能,并提供一些实际的代码示例。
293 0
|
1月前
|
XML 前端开发 JavaScript
PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑
本文深入探讨了PHP与Ajax在Web开发中的交互技术。PHP作为服务器端脚本语言,处理数据和业务逻辑;Ajax则通过异步请求实现页面无刷新更新。文中详细介绍了两者的工作原理、数据传输格式选择、具体实现方法及实际应用案例,如实时数据更新、表单验证与提交、动态加载内容等。同时,针对跨域问题、数据安全与性能优化提出了建议。总结指出,PHP与Ajax的结合能显著提升Web应用的效率和用户体验。
48 3
|
2月前
|
Java PHP
PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。理解其垃圾回收机制有助于开发高效稳定的PHP应用。
【10月更文挑战第1天】PHP作为广受青睐的服务器端脚本语言,在Web开发中占据重要地位。其垃圾回收机制包括引用计数与循环垃圾回收,对提升应用性能和稳定性至关重要。本文通过具体案例分析,详细探讨PHP垃圾回收机制的工作原理,特别是如何解决循环引用问题。在PHP 8中,垃圾回收机制得到进一步优化,提高了效率和准确性。理解这些机制有助于开发高效稳定的PHP应用。
53 3
|
4月前
|
JavaScript 搜索推荐 前端开发
从零搭建到部署:Angular与Angular Universal手把手教你实现服务器端渲染(SSR),全面解析及实战指南助你提升Web应用性能与SEO优化效果
【8月更文挑战第31天】服务器端渲染(SSR)是现代Web开发的关键技术,能显著提升SEO效果及首屏加载速度,改善用户体验。Angular Universal作为官方SSR解决方案,允许在服务器端生成静态HTML文件。本文通过具体示例详细介绍如何使用Angular Universal实现SSR,并分享最佳实践。首先需安装Node.js和npm。
117 1
|
4月前
|
API C# 开发框架
WPF与Web服务集成大揭秘:手把手教你调用RESTful API,客户端与服务器端优劣对比全解析!
【8月更文挑战第31天】在现代软件开发中,WPF 和 Web 服务各具特色。WPF 以其出色的界面展示能力受到欢迎,而 Web 服务则凭借跨平台和易维护性在互联网应用中占有一席之地。本文探讨了 WPF 如何通过 HttpClient 类调用 RESTful API,并展示了基于 ASP.NET Core 的 Web 服务如何实现同样的功能。通过对比分析,揭示了两者各自的优缺点:WPF 客户端直接处理数据,减轻服务器负担,但需处理网络异常;Web 服务则能利用服务器端功能如缓存和权限验证,但可能增加服务器负载。希望本文能帮助开发者根据具体需求选择合适的技术方案。
212 0
|
4月前
|
Rust 安全 开发者
惊爆!Xamarin 携手机器学习,开启智能应用新纪元,个性化体验与跨平台优势完美融合大揭秘!
【8月更文挑战第31天】随着互联网的发展,Web应用对性能和安全性要求不断提高。Rust凭借卓越的性能、内存安全及丰富生态,成为构建高性能Web服务器的理想选择。本文通过一个简单示例,展示如何使用Rust和Actix-web框架搭建基本Web服务器,从创建项目到运行服务器全程指导,帮助读者领略Rust在Web后端开发中的强大能力。通过实践,读者可以体验到Rust在性能和安全性方面的优势,以及其在Web开发领域的巨大潜力。
47 0
|
4月前
|
Java 数据库 API
JSF与JPA的史诗级联盟:如何编织数据持久化的华丽织锦,重塑Web应用的荣耀
【8月更文挑战第31天】JavaServer Faces (JSF) 和 Java Persistence API (JPA) 分别是构建Java Web应用的用户界面组件框架和持久化标准。结合使用JSF与JPA,能够打造强大的数据驱动Web应用。首先,通过定义实体类(如`User`)和配置`persistence.xml`来设置JPA环境。然后,在JSF中利用Managed Bean(如`UserBean`)管理业务逻辑,通过`EntityManager`执行数据持久化操作。
63 0
|
4月前
|
Rust 安全 Java
Rust语言在Web后端的应用:基于Actix-web构建高性能、安全可靠的服务器实践
【8月更文挑战第31天】随着互联网的发展,Web应用对性能和安全性要求不断提高。Rust凭借卓越的性能、内存安全及丰富生态,成为构建高性能Web服务器的理想选择。本文通过一个简单示例,展示如何使用Rust和Actix-web框架搭建基本Web服务器,从创建项目到运行服务器全程指导,帮助读者领略Rust在Web后端开发中的强大能力。通过实践,读者可以体验到Rust在性能和安全性方面的优势,以及其在Web开发领域的无限潜力。
199 0
|
4月前
|
JavaScript 前端开发 UED
服务器端渲染新浪潮:用Vue.js和Nuxt.js构建高性能Web应用
【8月更文挑战第30天】在现代Web开发中,提升应用性能和SEO友好性是前端开发者面临的挑战。服务器端渲染(SSR)能加快页面加载速度并改善搜索引擎优化。Vue.js结合Nuxt.js提供了一个高效框架来创建SSR应用。通过安装`create-nuxt-app`,可以轻松创建新的Nuxt.js项目,并利用其自动路由功能简化页面管理。Nuxt.js默认采用SSR模式,并支持通过`asyncData`方法预取数据,同时提供了静态站点生成和服务器端渲染的部署选项,显著提升用户体验。
95 0
|
4月前
|
数据可视化 Python
通过python建立一个web服务查看服务器上的文本、图片、视频等文件
通过python建立一个web服务查看服务器上的文本、图片、视频等文件
80 0

推荐镜像

更多