Websphere到底是否需要配置IHS

Websphere到底是否需要配置IHS

作者:tacy lee

有用Websphere做过项目的人可能都知道,ibm一般都建议在Websphere前面加一个IHS来做webserver,据说这样性能会提高30%左右,这样说是否有道理呢,下面我做了一个简单的测试来验证:

测试环境:

硬件:

应用服务器:Dell6600

压力测试客户端:自用笔记本(T2050 1.6G)

软件:

系统:CentOS 4.4

Websphere 6.0.2.17+IHS6.0.2.17(部署在同一台机器上)

首先配置好Websphere和IHS,发布一个简单的测试应用,用loadrunner来测试一下不同的组合看看(录制一个打开首页就可以了),下面是我的测试数据:

测试方法 每秒处理请求数 响应时间 服务器CPU
直接请求Websphere 4600/s 0.013s 28%
通过IHS转发请求 6800/s 0.009s 26%

数据显示,这还不是一点点提升,竟然快接近50%,把静态资源放置到IHS中测试了一把,基本和通过IHS转发差不多,稍微有些提升,不过放到IHS中可以方便Cache(Edge Server就包括了Caching Proxy component)

 

下面记录一下如何放置静态资源文件到IHS中:

1、打开Plugins中的plugin-cfg.xml,修改如下内容:

   
   
   
   
<UriGroup Name="default_host_eos_URIs">
   <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/*.jsp"/>
   <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/*.do"/>
   <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/eosmgr/*"/>
   <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/axis/*"/>
   <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/axis2/*"/>
   <Uri AffinityCookie="JSESSIONID" AffinityURLIdentifier="jsessionid" Name="/eoshome_deploy/*"/>
</UriGroup>

也可以通过修改WEB-INF下ibm-web-ext.xmi中的fileServingEnabled为false,然后重新生成plugin-cfg.xml,但是我试了一下好像不好用。

另外Websphere(fixpacks 5.1.1.17, 6.0.2.25 and 6.1.0.15)之后的版本给Webcontainer增加了一个自定义参数

com.ibm.ws.webcontainer.disallowAllFileServing

设定它为true产生同样的效果(而且他会覆盖ibm-web-ext.xmi中的设置)。

2、拷贝你的所有资源文件到IHS的Root Directory中

3、重启IHS

del.icio.us Tags: websphere, ihs, configuration, tuning

你可能感兴趣的:(Websphere到底是否需要配置IHS)