出于调试目的而强制Biztalk主机进行节流 [英] Forcing a Biztalk Host to Throttle for Debugging Purposes

查看:158
本文介绍了出于调试目的而强制Biztalk主机进行节流的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们当前在生产服务器中存在问题,并且希望尝试在我们的开发人员中重复该问题.我目前正在等待访问我们的性能监控工具,而在等待期间想尝试一下.

we're currently having issue in our production servers and would like to try to replicate the issue in our dev. I'm currently awaiting access to our Performance Monitoring Tool, and while waiting would like to play with it a little.

我正在考虑,因为我怀疑主机会限制生产,因此迫使主机限制开发并查看它是否会重现问题.

I'm thinking of, since I suspect a host throttling in prod, forcing hosts to throttle in dev and see if it will recreate the issue.

有没有办法做到这一点?

Is there a way to do this?

推荐答案

正如其他人所提到的,监视节流计数器和其他计数器,例如内存和WIP消息是查看生产服务器中正在发生的事情的必要条件.如果您拥有SCOM,还建议您为3+(发布+交付状态)的节流状态设置SCOM警报.

As others have mentioned, monitoring of the throttling counters and other counters like memory and WIP messages is a must to see what is going on in your production server. Also would recommend that set up a SCOM alert on throttling states of 3+ (publishing + delivery states), if you have SCOM.

尤其是在内存(4,5)和队列大小(6)状态下,消息吞吐量可能会停止.状态1 + 2通常是短暂的(例如,大量邮件的到达),并且Biztalk会在几秒钟内恢复.

Message throughput can grind to a halt on especially the memory (4, 5) and Queue Size (6) states. States 1+2 are generally short lived (e.g. arrival of a large batch of messages) and Biztalk recovers within a few seconds.

通过调整限制阈值(显然,在生产中不要轻易采取这种措施!)

Simulating the memory state in your Dev environment should be straightforward by tweaking the throttling thresholds (obviously not something to be taken lightly in production!)

例如触发内存阈值状态-AFAIK最低内存使用量阈值 10和11 尽管实际上还没有尝试过.

e.g. to trigger the Memory threshold states - AFAIK the lowest memory usage threshold you can set is 101MB. Running a load test in dev should then be able reproduce the throttle. There is also apparantly a user-based throttling override to set states 10 and 11 although haven't actually tried this.

其他一些避免节流的经验:

Some other experience on avoiding throttling:

(注意-我没有有效的BizTalk 2006/R2设置-这是2009/2010的版本)

(Caveat - I don't have an active BizTalk 2006/R2 setup - this is for 2009 / 2010)

  • 如果您执行大量异步处理(例如,队列接收),请确保已将功能拆分为单独的

  • If you do a lot of asynchronous processing (e.g. Queue receives), ensure that you have split functionality into separate Hosts for Receive, Processing and Send hosts. This way you can adjust the throttling for asynch Receive hosts to trigger much earlier than the processing and sending hosts - this should have the effect of constricting new incoming messages to the messagebox but allowing existing messages to complete processing.

在64位主机上,默认的25%内存主机使用限制级别通常是不必要的责任-

On 64 bit hosts, the default 25% memory host usage throttling level is usually an unnecessary liability - we increased this using Yossi Dahan's recommendation of 50% on a 4GB server

请注意,挂起的消息计为节流状态6-确保您具有处理挂起的消息的策略(并且显然确保Sql Agent作业正在运行!).

Note that suspended messages count toward throttling state 6 - ensure that you have a strategy for dealing with suspended messages (and obviously ensure that the Sql Agent jobs are running!).

这篇关于出于调试目的而强制Biztalk主机进行节流的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

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