Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Load balancing uPortal behind Apache (HTTP Server) is a common and in-expensive
way to host a single uPortal service across multiple servers.

Apache JServ Protocol (AJP)

Apache JServ Protocol is a binary protocol used to proxy inbound requests from
a web server (e.g. Apache) to application servers. AJP is commonly used with
Apache and Tomcat.

Choosing A Plugin

Apache Web Server is a long-standing project with a large ecosystem of plugins.
It is no surprise that there are multiple ways to configure Apache and Tomcat
servers given this fact.

Mod_JK

The mod_jk plugin is fairly old. It is still functional and many experienced
implementors are familiar with it. This is the main motivation to use this plugin
over the mod_proxy_ajp.

Load Balancing with Mod_JK

Mod_Proxy_AJP

The mod_proxy_ajp plugin is part of the modern mod_proxy* set of plugins. These
have a consistent style of configuration. Implementors with mod_proxy experience
will likely favor this plugin.

Load Balancing with Mod_Proxy_AJP

Considerations

One consideration is whether to host Apache separately in it's own
server or host it with a Tomcat (web container). Note that while the approach
detailed below is specific to Apache and Tomcat, similar solutions for other
containers should be easy to find. An advantage of having a Tomcat with Apache
is that as long as the load balancing server is running correctly, it the service
is available. Connection loss to other Tomcats, although performance will
likely suffer. The downside is a potential that a flakey Tomcat on the
load balancer may compromise the whole service if it brings down this
critical server. The nice part of this decision is that configuring
Tomcat local to Apache can be done the same as for remote Tomcats. They are
independent even with hosted on the same server.

  • No labels