Child pages
  • Load Balancing Servers

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Using an HTTP Server in front of the cluster, provides Clients a single point of entry, hiding the separate Servoy Application Servers from view for Clients.
  • Using a Load Balancer in front of the cluster, allows for the automatic distribution of connecting Clients over the available Servoy Application Servers.

In this chapter, Apache HTTP Server is for both the single point of entry and as Load BalancerThere are multiple ways to setup Load Balancing and the single point of entry, for example:

  • Custom Balancing inside Tomcat
  • Using HTTP servers like IIS that support (or have modules for) AJP1.3

In this manual the process of setting up and using Apache HTTP Server is described. This manual doesn't replace the documentation of the Apache HTTP Server itself, as it gives details the bare minimum to install Apache HTTP Server and do the required configuration to make the Apache HTTP Server work with the Servoy Application Server Instances.

Using Apache HTTP server as a front-end to load-balance a cluster of Servoy Application Servers is optional. You should be able to do this in other ways, including custom balancing inside a Tomcat instance application or using other HTTP servers such as IIS that support (or have modules for) AJP1.3. Read through the section even if you do not plan to use Apache HTTP Server as it also shows configuration changes needed for Servoy Application Servers to run in a similar setup.

Smart clients will connect directly to the individual Servoy Application Servers in the cluster. The load-balancing is done by serving the JNLP file from different servers when the Apache HTTP front-end is accessed. Add to each of the Servoy Application Server's "servoy.properties" files the following line (needed for Smart Client load balancing):

servoy.jnlpCodebaseOverride=http://thisServersHostnameAsSeenByClients:portImage Added
What you should also take into consideration when setting up a load-balanced cluster, is allowing smart-clients to connect directly to individual servers in the cluster. This means that all Servoy Application Servers should be accessible from the client side - and you might want to isolate the cluster so that connections to ports used by Terracotta (see tc-config.xml) are only allowed from within the cluster, even if connections from client machines on Servoy ports should be allowed to all Servoy Application Servers.