BizTalk 2010主机实例在处理完成后很长时间内CPU使用率很高 [英] BizTalk 2010 Host Instance high CPU usage long after processing is complete

查看:44
本文介绍了BizTalk 2010主机实例在处理完成后很长时间内CPU使用率很高的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是在BizTalk 2010上。下面的网址反映了我的问题。

This is on BizTalk 2010. The url below reflects my problem quite similarly.

http://social.msdn.microsoft.com/Forums/en-US/biztalkgeneral/thread/a01f1545-cf36-4e82-b165 -79905c1c6a28 /

 

当我的应用程序运行时,没有问题,负载管理非常有效。该过程将完成,将消耗所有消息,不存在僵尸,SQL代理正在运行且所有作业都成功,​​并且我的硬件绝对符合规范。
哦,是的,我有一个专门的跟踪主机,我在处理的任何时候都没有保存任何邮件正文。

When my application is running, there are no problems, load is managed quite effectively. The process will complete, all messages will be consumed, no zombies exist, SQL Agent is running and all jobs are successful, and my hardware is absolutely within spec. Oh, and yes, I have a dedicated tracking host and am not saving any message bodies at any point in my processing.

 

提供回调后,我的cpu回到0-1%的使用率。然后,在不可预测的时间之后,专用于编排的64位主机实例将长时间跳到100%的CPU使用率,有时是20-30分钟。然后
主机实例将重新启动。但只有在SQL Server无响应之后,导致其他主机实例失败并且无法恢复(没有在服务上设置恢复选项)。

After my callback is provided, my cpu goes back to 0-1% usage. Then, after an unpredictable amount of time, the 64bit host instance which is dedicated for orchestrations will jump up to 100% CPU usage for a long period of time, sometimes 20-30 minutes. The host instance will then restart. But only after SQL Server becomes unresponsive, causing other host instances to fail which do not recover (without setting recovery options on the service).

我没有使用不安全的代码但是正在调用帮助程序类在处理过程中。 

I am using no unsafe code but am calling helper classes during processing. 

再次重申一下,应用程序的性能非常好。在处理完最后一个记录集后,有时会发生一个小时或更长时间。 

And again, to reiterate, performance of the application is JUST FINE. This occurs sometimes an hour or more after processing of the last record set completed. 

上面的链接说服务包为他解决了这个问题,但他正在使用2009. 

The link above said that a service pack fixed this issue for him but he was using 2009. 

我看到2010年适配器包的这个kb。

I see this kb for the 2010 adapter pack.

http://support.microsoft.com/kb/2539794

 

我确实在使用WCF适配器但是访问Oracle,而不是SQL Server。我在Oracle中的视图上使用轮询接收,尽管PolledDataAvailable默认为"select one from dual",但它通常没有任何内容。

I am indeed using WCF adapters but to access Oracle, not SQL Server. I am using a polling receive on a view in Oracle, and it will most often have nothing in it, despite the PolledDataAvailable by default being "select 1 from dual".

 

对于接收位置或BizTalk的SQL Server的目标数据库上是否发生锁定,kb是不明确的,但我假设修复实际上不适用于我的问题。但如果我的假设有误,请告诉我。

The kb is ambiguous as to if the locking is occurring on the target database for the receive location or BizTalk's SQL Server, but I'm assuming that the fix actually isn't for my problem. But if my assumption is wrong, please let me know.

 

否则,此问题的任何提示,经验或解决方案都会节省我很头疼。

Otherwise, any tips, experience, or solutions to this problem would save me a lot of headaches.

推荐答案

我会进入详细说明我的主机实例调整等等,但由于它在回调呈现后回到0%一段时间(双向Web服务接收位置)并且之后没有活动实例存在,我无法想象它会不会'是这个来源

I would go into detail as far as my host instance tuning and such, but since it goes back to 0% for a while after the callback is presented (2 way web service receive location) and no active instances exist after, I can't imagine it wouldn't be the source of this.

 

这可能吗?在调用帮助程序类的业务流程实例结束后,是否要释放线程?

Is that possible? For threads to not be released after an orchestration instance calling helper classes concludes?

 

我在帮助程序中没有做任何显式线程。编排实例一结束就应该取消引用和释放所有内容。

I'm not doing any explicit threading in my helpers. Everything should be dereferenced and released I'd expect as soon as the orchestration instance concludes.


这篇关于BizTalk 2010主机实例在处理完成后很长时间内CPU使用率很高的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆