COM+服务器的CPU资源占用太大,多个客户端同时访问时就达到100%,请问有什么方法可以尽量优化和避免这种情况吗? 实现IObjectControl,用线程池。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1.我建议首先在task manager中检查CPU是被哪个进程吃掉的。 dllhost.exe,iis.exe,还是其它进程,从而确认问题出在哪里。2.参照下面这篇文章看看你的设计上有没有改进的地方:COM+ and Windows 2000: Ten Tips and Tricks for Maximizing COM+ Performancehttp://msdn.microsoft.com/msdnmag/issues/1200/comtips/comtips.asp3. 然后检查一下程序设计逻辑是否有漏洞,我曾经遇到客户设计了导致死循环的代码。另外检查你的程序是否有很耗CPU的操作,比如频繁读写硬盘等等IObjectControl只是降低object activation/deactivation的开销,如果你的COM对象的初始化很耗CPU,你可以考虑使用object pooling,但使用object pooling 的对象有很多严格的限制,关于这方面的文档你可以查看MSDN。增加线程也不一定有效,因为那将带来线程切换的开销,使得本已经不够用的CPU要额外分摊到线程的切换上。另外COM+可以根据客户的数量动态的增加线程池。如果你能post出更多的程序设计上的信息,我们会提供更多的分析和帮助。- 微软全球技术中心 VC技术支持 本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款 (http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。 为了为您创建更好的讨论环境,请参加我们的用户满意度调查 (http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。 DLL中注册热键的问题!在线等回答! 弱弱的问题再次惊现! 作战理论入门[日]陆上自卫队修(带链接) 如何创建两排工具栏? 关于软件的注册,加密的问题? 何在内存中开辟一个区域用来保存从网上下载的excel文档? DAO还是ODBC,100分 高手们!帮忙看一下这段源程序! 静态文本框显示位图状态 CList GetNext() 访问冲突 急!!急!!用vc实现哲学家就餐问题和生产者消费者问题。给100分。 请问各位前辈,哪里有video for windows sdk 下载!
COM+ and Windows 2000: Ten Tips and Tricks for Maximizing COM+ Performance
http://msdn.microsoft.com/msdnmag/issues/1200/comtips/comtips.asp3. 然后检查一下程序设计逻辑是否有漏洞,我曾经遇到客户设计了导致死循环的代码。另外检查你的程序是否有很耗CPU的操作,比如频繁读写硬盘等等IObjectControl只是降低object activation/deactivation的开销,如果你的COM对象的初始化很耗CPU,你可以考虑使用object pooling,但使用object pooling 的对象有很多严格的限制,关于这方面的文档你可以查看MSDN。增加线程也不一定有效,因为那将带来线程切换的开销,使得本已经不够用的CPU要额外分摊到线程的切换上。另外COM+可以根据客户的数量动态的增加线程池。如果你能post出更多的程序设计上的信息,我们会提供更多的分析和帮助。- 微软全球技术中心 VC技术支持 本贴子以“现状”提供且没有任何担保,同时也没有授予任何权利。具体事项可参见使用条款
(http://support.microsoft.com/directory/worldwide/zh-cn/community/terms_chs.asp)。
为了为您创建更好的讨论环境,请参加我们的用户满意度调查
(http://support.microsoft.com/directory/worldwide/zh-cn/community/survey.asp?key=(S,49854782))。