ApacheCon EU 2009: Achieving Scalability and High Availability for Clustered Web Services using Apache Synapse
- By wso2 wso2
- 3 Apr, 2009
This requires a cluster of services to be available and Synapse will balance the load and fail over route the messages among the cluster of services to provide scalability and availability. Apache Synapse is designed to be a simple, lightweight and high performance Enterprise Service Bus (ESB). Since it is based on a small asynchronous core, it can handle 2500 concurrent connections on a standard server hardware. The Synapse engine is configured with a simple XML format and comes with a set of ready-to-use transports on which it can be used as a load balancer and a fail over router. Synapse supports static and dynamic load balancing, static load balancing can be used when you have a set of known hosts in the cluster where as dynamic load balancing could be used for an environment where the nodes on the service cluster is dynamic for example when auto scaling of the service cluster is active. In the case of dynamic load balancing the load balance endpoint gets the list of nodes which provides this service from the underlying Group Communication Framework of the cluster. Apache Synapse can be used for general mediation tasks while providing the scalability and availability to a set of services as well. You may use Synapse to log the messages coming into your network or to throttle the messages to your services
Ruwan Linton joined the WSO2 team in September 2006 as a software engineer. He is currently the Project Manager for the WSO2 ESB project team and is an active contributor to the Apache Synapse project. Ruwan has worked on several projects related to J2EE technologies as well as Struts and XML, and has also completed a project on Web User Interface generation for Web Services (GenUWIn). He has the degree in Computer Science & Engineering from the University of Moratuwa, Sri Lanka.