日本清洁美容仪器哪个:Websphere性能优化

来源:百度文库 编辑:偶看新闻 时间:2024/05/02 16:51:04
Websphere性能优化页面静态方案
通过IBM Http Server(下文称为IHS)静态页面分离技术与利用WebSpere Application Server(下文称为WAS)的动态高速缓存(Dynamic Cache)技术优化访问页面性能。客户端访问静态页面无须与后端数据交互,减少了容器与数据源的压力,从而达到优化系统的性能。
IBM Http Server不但可以作为 WAS 的前一级 Http 请求队列的缓冲,减轻WAS的压力,还可以利用其静态页面分离方案减轻部分压力。在系统的部署或者构建的时候,我们可以把一些非重要的静态页面放在 IHS 中,当客户端发送请求访问该页面资源时,由IHS直接响应请求并将静态页面资源返回客户端,无须再经过WAS,从而达到减轻达到WAS 负担的目的。
除了IHS静态页面分离方案,另外还可以利用WAS的动态高速缓存技术,将J2EE应用中静态的(Html、Flash、Css、Js、Jpg、Gif图片等文件)和动态的(需要与数据库、Web Service等服务交互才能得到的数据)内容缓存到应用服务器的JVM中(如:Jsp、Servlet、*.do等请求)。在访问相关被缓存的资源时,所有的相关输出都可以直接从JVM的内容中获得,而无须再与数据库、Web Service、静态文件等交互,从而有效地提高系统的性能。
IHS分离静态内容方案    整个操作过程主要分3步完成
n  关闭Was的File Serving Servlet服务
n  重新生成插件(Plugin-cfg.xml)
n  修改IHS配置文件并拷贝静态文件到指定的目录
关闭Was的File Serving Servlet服务
1)   在Was中部署的Web应用中分别找到2个在/WEB-INF/ 目录下面的 ibm-web-ext.xmi 文件。
参考路径:
Ø  IBM/WebSphere/AppServer/profiles/节点/conf/cell/applications/应用包名/ deployments/应用包名/应用包名/WEB-INF/目录下
Ø  IBM/WebSphere/AppServer/profiles/节点/应用安装部署目录/应用包名/应用包名/WEB-INF/目录下
2)   打开 ibm-web-ext.xmi 文件,找到 fileServingEnabled属性项,把它设为 flase, 默认是ture。找不到该属性项可直接手工添加(fileServingEnabled="false")。
如:

xmi:version="2.0"
xmlns:xmi="http://www.omg.org/XMI" xmlns:com.ibm.ejs.models.base.extensions.webappext="webappext.xmi" xmi:id="WebAppExtension_1260496854906"
fileServingEnabled="false">

name="reloadEnabled" value="true"/>
name="reloadInterval" value="10"/>

3)   重启Was,重启完校验配置是否生效。访问Web应用中的静态文件,如会报404错误的,这是正常现象,表示Was中的 File Serving servle 服务功能已经被关闭了。
重新生成插件(Plugin-cfg.xml)
Ø  登陆Was控制台,环境->更新全局Web 服务器插件配置->确定,重新生成插件。
Ø  服务器->Web服务器->选择相应的web服务器->生产播件->传播插件
Ø  检查配置文件是否正取。
打开IHS/Plugins/conf/web服务名/plugin-cfg.xml.找到UriGroup项,检查其配置。如Uri中的配置还是指定为 Name=”/*”,须注释该行配置,否则IHS会将所有的请求都返回给WAS处理,那么所有访问静态内容都会报404错误。可通过手工配置相应无须过滤的Uri。
具体参考配置如下:







修改IHS配置文件并拷贝静态文件到指定的目录
1)   在IHS的默认路径,打开 \IBM HTTPServer\conf\http.conf文件,找到如下配置:
#
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
#
DocumentRoot "D:\IBM\HTTPServer/htdocs/en_US"
#
# This should be changed to whatever you set DocumentRoot to.
#

可将 D:\IBM\HTTPServer/htdocs/en_US设置为新的目录,自定义新的静态页面目录。
我们将非重要的静态文件放到E:\PageFiles\2009-12-11\目录下,配置如下:
DocumentRoot "E:\PageFiles\2009-12-11"

2)        把应用中的静态文件拷到 上述在Httpd.conf配置文件定义好的路径中去。
最后可根据上面的配置,将静态文件都是从Was应用中拷贝到E:\PageFiles\2009-12-11\目录中。
3)        重新启动IHS
通过页面再次访问静态页面,此时不会再出现404错误了,IHS接到请求访问静态页面内容时,会直接读取E:\PageFile\2009-12-11\返回页面请求,通过该配置可以进一步减轻Was的压力。
启用WAS动态高速缓存    启用动态高速缓存服务同样也分为3步
n  在WAS控制台上启用动态高速缓存服务
n  为应用服务器配置 Servlet 高速缓存
n  cachespec.xml配置文件
在WAS控制台上启用动态高速缓存服务:
1)   登录Was的管理控制台
2)        在管理控制台中,启用“服务器->应用程序服务器->Server1->容器服务->动态高速缓存服务”
(勾上‘在服务器启动时启用服务’)
3)        确定并保存配置
为应用服务器配置 Servlet 高速缓存:
1)   在管理控制台中,启用“服务器->应用程序服务器->Server1->Web容器设置->Web容器-> 启用servlet 高速缓存
(勾上‘启用servlet 高速缓存’)
2)        确定并保存配置
cachespec.xml配置文件
1)   在应用目录下WEB-INF/下增加cachespec.xml配置文件,通过该文件指定缓存对象。
内容如下:注意红色部分,要正确指定cachespec.dtd文件位置,一般情况下是在/IBM/WebSphere/Appserver/properties目录下。




servlet
index.jsp


false


false


false

180



2)   在完成前三步后,在服务器上安装Cache Monitor组件,来监控刚才配置的动态高速缓存(DynamicCache)是否成功运行。
发布IBM/WebSphere/AppServer/installableApps/CacheMonitor.ear,并且将该应用与要业务应用部署在用一个Server下。
3)   部署完毕后,重启整个WAS。
4)   测试校验部署是否生效。
分别访问:
Ø  http://127.0.0.1/index.jsp
Ø http://127.0.0.1/index.jsp?123
通过访问http://127.0.0.1/cachemonitor  就可以查看到index.jsp已进行了缓存
如图所示:
以上的两种技术一种是基于WEB服务器一级别的优化,另一种则是基于Websphere应用服务器上的优化,合理的使用两种技术,可更有效的帮助应用系统提高性能。
虽然在 WAS V6 以上的版本中,Web Container 对于 Http 请求采用了非阻塞I/O 方式,使得IHS 的这一功能作用已经非常弱化,但在大并发访问的情况下,还是建议大家使用IHS+WAS架构,使用IHS缓冲客户端请求与并且利用其得静态页面技术,直接返回静态资源,减轻应用服务器压力;开启Was动态高速缓存,缓存一些变动较少的Jsp、Servlet等资源,进一步有效的优化系统的性能。分别将IHS与WAS 部署到两台物理主机上,可以让在系统在性能扩展上更加灵活,利用垂直扩展优化可更有效的提高系统的性能。