小
小猪
Unregistered / Unconfirmed
GUEST, unregistred user!
最近做了几个基于websphere的项目,最后感觉性能上都让人不太满意,
于是仔细研究了websphere的性能调整的文档,有些想法,也发现了一些问题,
希望提出来大家探讨一下。
1。http server websphere application server以插件形式集成到apach服务器中,
apach是基于进程机制的,但我发现随ibm websphere提供的ibm http server似乎已经
修改成线程机制了,无论客户端访问量如何增加,在内存中总是只有两个apach进程,
按照文档的说明,其中一个是主进程,另一个是子进程,而所有的http请求都由该子进程
响应。在http server的配置文件中可以设置子进程的最大线程数。我现在比较疑惑的是
ibm http server究竟是进程机制还是线程机制。
2关于servlet。 was以插件形式注册到http server中,于是http server会将servlet请求
转发给was,这里,was定义了一个队列,该队列存放了所有从http server转发过来的
servlet请求,我发现增加该队列的最大连接数设置可以从一定程度上改善性能,当然,
我的机器的资源是足以满足的。但有一个很奇怪的问题出现了,当客户端访问量比较大时,
客户端由于响应超时已经放弃了该连接,但是apach好像并不知道这一情况,它会持有该连接
并等待was返回对servlet的响应后一直试图向客户端写入响应结果,于是apach的活动连接数
上升很快,而且由于向客户端写入响应结果的操作事实上呈挂起状态,于是会导致was与
http server间的请求队列被阻塞,除非强制was重新生成请求队列,否则was会一直拒绝响应,
但事实上was并没有宕掉。
我想知道有没有办法可以让apach放弃掉客户端已经放弃的请求,并且,根据was文档介绍,
was在对于servlet转发请求队列的使用中存在一些bug,它不能很好的清理已经无效的请求,
那么有没有哪位在实际中碰到过类似的情况,有没有什么比较好的解决办法?
3。关于was请求队列的漏斗状结构。
按照was的文档,应该设置该队列的各个节点的最大连接数为一个漏斗状的前大后小的
形式,但基于前面的分析,这会导致was请求队列严重阻塞,不知各位对此有何看法。
于是仔细研究了websphere的性能调整的文档,有些想法,也发现了一些问题,
希望提出来大家探讨一下。
1。http server websphere application server以插件形式集成到apach服务器中,
apach是基于进程机制的,但我发现随ibm websphere提供的ibm http server似乎已经
修改成线程机制了,无论客户端访问量如何增加,在内存中总是只有两个apach进程,
按照文档的说明,其中一个是主进程,另一个是子进程,而所有的http请求都由该子进程
响应。在http server的配置文件中可以设置子进程的最大线程数。我现在比较疑惑的是
ibm http server究竟是进程机制还是线程机制。
2关于servlet。 was以插件形式注册到http server中,于是http server会将servlet请求
转发给was,这里,was定义了一个队列,该队列存放了所有从http server转发过来的
servlet请求,我发现增加该队列的最大连接数设置可以从一定程度上改善性能,当然,
我的机器的资源是足以满足的。但有一个很奇怪的问题出现了,当客户端访问量比较大时,
客户端由于响应超时已经放弃了该连接,但是apach好像并不知道这一情况,它会持有该连接
并等待was返回对servlet的响应后一直试图向客户端写入响应结果,于是apach的活动连接数
上升很快,而且由于向客户端写入响应结果的操作事实上呈挂起状态,于是会导致was与
http server间的请求队列被阻塞,除非强制was重新生成请求队列,否则was会一直拒绝响应,
但事实上was并没有宕掉。
我想知道有没有办法可以让apach放弃掉客户端已经放弃的请求,并且,根据was文档介绍,
was在对于servlet转发请求队列的使用中存在一些bug,它不能很好的清理已经无效的请求,
那么有没有哪位在实际中碰到过类似的情况,有没有什么比较好的解决办法?
3。关于was请求队列的漏斗状结构。
按照was的文档,应该设置该队列的各个节点的最大连接数为一个漏斗状的前大后小的
形式,但基于前面的分析,这会导致was请求队列严重阻塞,不知各位对此有何看法。