Web-based Horizontal Scaling Using iWay Performance Monitor

In this section:

iWay Performance Monitor is a Web service monitoring and routing solution. Policy-based routing can be used to manage traffic and distribute workloads across iWay instances in complex ways. In a HA environment, the iWay Performance Monitor node should be deployed with hot backup so there is no single point of failure.


Top of page

x
Horizontal Scaling for Queuing

An extensive explanation of configuring third-party message queuing products for the HA environment is beyond the scope of this appendix. All mature queuing products support the configuration options needed to scale horizontally without adversely affecting guaranteed, non-duplicated message delivery. The simplest approaches entail allowing multiple consumers to access a queue and message filtering to balance the load between iWay listeners. If that is inappropriate, stateless horizontal scaling can be achieved by using additional instances of iSM and redistributing existing clients to these instances. Stateful horizontal scaling is generally achieved by connecting instances of iSM into a cluster, which allows those instances to communicate with each other, as well as to the application clients.


Top of page

x
Horizontal Scaling and Transactions

iWay is optimized for handling stateless processes. Scaling and load balancing may affect the order of processing of messages and may allow a series of related messages to execute on different iWay instances. Because of this, moving to a HA architecture can reveal idiosyncrasies and/or limit design assumptions in the application. Applications that have implied transactions or implied message order dependence may behave differently in the HA environment. Note that iWay is not the source of this changed behavior; any middleware deployed for HA will reveal these types of application flaws. In situations where a Web router is part of the iWay HA solution, enabling session affinity may ensure correct application behavior.

 


iWay Software