注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

mylotustips的博客

IBM Lotus协作产品家族经验分享

 
 
 

日志

 
 
关于我

欢迎大家使用SR向IBM800提交问题http://www.ibm.com/support/servicerequest 可以随时查看问题状态,上传文件

网易考拉推荐

Domino Http 活动线程数的推荐设置  

2012-05-18 14:50:38|  分类: Domino服务器 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 

环境:(产品,平台,机型,软件版本,)
产品: Lotus Domino
版本:8.0, 7.0, 6.5, 6.0

http://www-900.ibm.com/cn/support/viewdoc/detail?DocId=1897668E20003

问题描述:
Lotus Domino serverHttp 活动线程数最大推荐值是多少?这个设置位于服务器文档->Internet 协议->HTTP->活动的线程数

解答:
考虑到内存的限制和线程切换所需的开销,建议对于单处理器的服务器,此值不要设置超过64;对于多处理器的服务器,此值不要设置超过80。如果超过了建议的设置值,很可能会降低服务器性能,甚至导致宕机。即使对于某些操作系统,比如i5/OS (iSeries),可以设置较高的活动线程值(可达到512),分配较多的活动线程也不意味着一定会有更好的性能。

Domino 6 及以后的版本已经允许更少的线程执行更多的工作。所以,超过80个活动线程会由于线程的切换反而对性能产生负面影响。因此,上面给出的活动线程数已经是最大的建议设定值。您需要决定的是具体设定为什么值会最适合您的生产环境。这里建议您从默认的40个线程数开始,逐渐地增长,可以一次增长10个线程数,来决定设置为何值时可将性能调整为最优。

对于Domino678 服务器来说,您可以通过定时输入“show stat”命令来收集统计信息,以调整HTTP的线程数:

Domino.Threads.Active.Peak (R5 及以上版本) 当执行特定的NSF请求时,并发的HTTP线程峰值
HTTP.CurrentConnections (Domino 6及以上版本) –当前HTTP服务器的连接数,不论是何种请求类型
HTTP.PeakConnections (Domino 6.0.5/6.5.4及以上版本) –从HTTP服务器启动开始的连接峰值,不论是何种请求类型

这三个统计值可以看出服务器的负载情况,但是不能说明一定要增加HTTP工作的线程数才能具有好的性能。
在决定是否增加HTTP工作的线程数之前,您需要关注的是如何提高服务器的处理能力,而不是一味关注服务器的负载。举例来说,在Threads.Active.Peak 统计值是75时设置80个活动线程,这种情况不意味着就会比40个活动线程,峰值40性能更好。当然,这取决于请求的类型,以及运行于Domino服务器上的应用。

说到服务器的处理能力,您可以通过处理单个请求所花费的时间来判断,也就是以下这两个统计信息相除的结果:
HTTP.Worker.Total.RequestsProcessed (Domino 6.5.4 及以上版本) HTTP工作线程所处理的请求总数
HTTP.Worker.Total.TotalRequestTime (Domino 6.5.4 及以上版本) - HTTP工作线程所处理的请求所花费的总时间

TotalRequestTime 除以 RequestsProcessed 就会得到服务器处理能力的统计数值。
另外,完成一个请求所需的时间也可以被记录,只是这种方法需要用户做一些额外的操作,如定制脚本,或手工地把这些数据分析出来。

为更好地设置活动线程数,建议您在观察服务器处理能力的同时,也同样观察服务器在处理一些简单请求所花费的平均时间,比如"OPTIONS *" "GET /test.html"(这里,test.html可以是一个简单的html页面或是其他小资源)。如果这些简单请求的响应时间已经达到了不能接受的范围,那么您可以考虑增加HTTP工作线程数。然后继续观察服务器处理情况以及简单请求的响应时间,以检测是否提高了服务器的性能。

另外,您还可以通过压力测试来模拟对于您的应用预期的负载量,同样运用上边提到的建议值以及统计数据。一些测试数据记录在developerWorks的相关文档中,您可以通过这篇文章最后列出连接访问这些文档。

注意:Domino.Threads.Active.Peak 只记录了并发的NSF请求数, NSF请求不包括在内。因此,如要收集同时包括NSF以及非NSF的信息,您可以定期输出"show stat http" ,并观察HTTP.Worker.TotalRequestsProcessed HTTP.Worker.Total.TotalRequestTime 这两个统计值。 对于更多的关于HTTP线程数的讨论,请参考developerWorks: Lotus Web site中的这篇文章:
"Optimizing server performance: HTTP Threads settings"
http://www.ibm.com/developerworks/lotus/library/ls-HTTP_Threads_settings/
 
 
  评论这张
 
阅读(285)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017