Skip to main content
Version: 8.2405.x.x RR

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 (required for load balancing too): Configure multiple target addresses (e.g., InetAddress for HttpConnectorServlets) as documented in the corresponding connector section, see the chapter FakeLoginFilter.
  • 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>