Configuring fail-safety and load balancing to content providers
Most connector servlets in nevisProxy support fail-safety and load balancing. The following steps are required to enable the corresponding feature:
- Use fail-safety ).
- Enable load balancing: set the Load Balancing configuration parameter to 'true'. The default loadbalancing policy of the connector applies now (which is usually round-robin with session stickiness, if a session exists, e.g. due to authentication)
- Customize loadbalancing: you may need to adapt the loadbalancing policy. A content provider serving stateless web services does not require session stickiness. The resource manager to use round-robin loadbalancing without session stickiness is 'ch::nevis::isiweb4::servlet::connector::base::StatelessResourceManager' (instead of the default 'ch::nevis::isiweb4::servlet::connector::base::SessionResourceManager'). You may also want to adapt the recovery policy (per default, a periodic, synchronous retry is performed at most every 10 seconds, triggered by a client call).
Example:
<servlet>
<servlet-class>ch::nevis::isiweb4::servlet::connector::http::HttpConnectorServlet</servlet-class>
<init-param>
<param-name>InetAddress</param-name>
<param-value>ws1.company.com:8080 ws2.company.com:8080</param-value>
</init-param>
<init-param>
<param-name>LoadBalancing</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>ResourceManager</param-name>
<param-value>
ch::nevis::isiweb4::servlet::connector::base::StatelessResourceManager
</param-value>
</init-param>
<init-param>
<param-name>ResourceManager.RetryTimeout</param-name>
<param-value>10</param-value>
</init-param>
</servlet>