A BizTalk group that has more than one BizTalk server, intrinsically processes and handles messages simultaneously on both servers. However, few adapters like the FTP adapter, the MSMQ adapter, the POP3 adapter, the SQL adapter, and the SAP adapter don’t go hand-in-hand with an Active-Active setup, and on doing so we may end up with either duplicate messages as several BizTalk servers within the group will try to process the same message. Hence, a Clustered BizTalk Host is brought into play to solve this. The clustered Host instance is an Active-Passive set-up where only one BizTalk server will run at a time. If any failure is encountered on the running clustered instance, it will failover so another server can complete the unprocessed messages.
To manage the utilization of resources by the host instances, BizTalk Server will throttle to shape the flow of messages and their processing. Corresponding to regular host instances, inbound (message publishing) and outbound (message delivery) throttling is applicable to Clustered hosts as well. You need to make it certain whether BizTalk environments with clustered host instances are working proficiently or under throttling conditions. For BizTalk Administrators to solve this challenge, BizTalk360 provisions a Monitoring Service to closely keep an eye on the Clustered host throttling. In this blog, lets us explore on how Clustered Host Throttling can be monitored from BizTalk360.
BizTalk Server handles message processing via its BizTalk host instances. In a Cluster setup BizTalk Server finds out if a Host instance is Active, if not, the other node will be started.
The Throttling mechanism adopted by BizTalk Server works similar for clustered hosts as well as for non-clustered hosts. In case of a clustered host (active/passive setup), when the workload overloads the capacity of the host instances, the throttling mechanism comes into picture. At that time, the throttling mechanism limits the workload in the Active node (as the passive node is stopped) until the throttling condition is over.
When an Active node in a cluster is under throttling due to overload or traffic, and if you have to detect the throttling condition in your environment, it requires immense expertise and understanding about BizTalk Server. Even with a BizTalk expert, it is a very tedious and time-consuming task as there are not many solutions for monitoring these Throttling conditions. So then, how do you fine tune throttling in your BizTalk environment? It’s made simple with BizTalk360 Monitoring!
BizTalk360 helps you monitor if an Active node in a clustered Set-up is working effectively. In BizTalk v10.1, you can create an Alarm, and you are good to start monitoring your BizTalk Clustered Host(s). After alarm creation, in Manage Mapping, under BizTalk Environment in the Host Throttling category, all the BizTalk hosts in the environment will be listed by default. The clustered hosts in the set-up will be differentiated from the other hosts by a small cluster symbol. The Active host instance in the cluster will be specified as (Active) and the Passive host instance will be greyed out as delineated in BizTalk Server for easy understanding.
Consider your BizTalk group is highly available, but to avoid duplicate processing of messages you have configured a Clustered Host and two Host instances i.e.. Only one host instance is running (Active) at a time. In case of any failure that occurs to the active host instance, the BizTalk Administrator can attempt to fail over and the other instance in the resource group is started, and messages are processed successfully. For example, if the messages published to the subscribed host has exceeded a limit, or if the available physical memory is high, or anything that could slow down the performance of the process and if a throttling condition occurs, it is very difficult to analyze the root cause in a clustered set-up. This is because the cluster resource owner should find out if any failover has happened and which is the current active node in the group. After that the throttling conditions can be detected by collecting the relevant performance counters.
Sounds Complicated right?
But with BizTalk360, monitoring Clustered Host is made easy with only a single click. Select the clustered host that you must monitor and click “Enable Monitoring”. Simple! The Active Cluster Host will be monitored. By default, any throttling violation that persists for 60 seconds will be notified to BizTalk Administrators.
Furthermore, BizTalk admins can modify the default throttling monitoring parameters by clicking Edit. You can set both publish and delivery throttling monitoring rules for the Clustered host(s), based on the following metrics for specified time units like second, minutes and hours.
You can monitor multiple throttling conditions for both publish and delivery mechanism, also include combination of multiple conditions using Logical AND/OR.
Let us consider a scenario,
You must keep a close watch if Any publish throttling persists for more than 60 seconds. Besides that you also must monitor the concurrent MessageBox Databases connections used and check if process memory utilized doesn’t go beyond the threshold set. So, for this scenario, you can configure the rules like in the below screen.
The clustered hosts will be monitored as per the threshold rules configured and the status can be viewed quickly on the BizTalk360 UI by clicking on the eye icon.
If any rules are violated, the users will be notified via E-mail and other configured Notification Channels.
With this improved Clustered Host Throttling Monitoring feature, we anticipate that our customers can easily monitor clustered host throttling in a timely manner and take appropriate actions. Why not give BizTalk360 a try and monitor your BizTalk environment with the 14 days free trail for BizTalk360 ?