AEM Apache Dispatchers
A dispatcher is simply an Apache web server in front of an AEM instance. The apache instances use an Adobe module which can perform several functions:
- ● load balancing between multiple backend AEM instances - Adobe recommends not using this function
- ● restricting access to specific AEM paths
- ● caching AEM content (file system based-cache with files stored in the DocRoot)
Note that the functions listed above could also be done by other methods.
The apache hosts are using a stock RedHat httpd installation in /etc/httpd, but the external facing hosts use a slightly different configuration where logs, docroot, etc are in /opt/cloudhost rather than /var as per Company standards.
- Author Dispatch Instances
- ● Dispatcher configuration on each apache host is configured to talk to a single AEM author instance (author)
- ● Redirects http requests to https
- ● Dispatcher configuration file is in /etc/httpd/conf/author_dispatcher.any
- ● Almost all caching is disabled
- ● Dispatcher configuration allows any AEM author instance to clear cache
- ● Only /libs is cached and must be flushed manually in the rare case /libs is modified
- Publish Dispatch Instances
- ● Dispatcher configuration on each apache host is configured to talk to a single AEM publish instance (publish)
- ● Dispatcher configuration file is /etc/httpd/conf/publish_dispatcher.any
- ● Dispatcher configuration allows any AEM publish instance to clear cache
- ● The internal facing apache hosts have an existing iptables setup which redirects port 80 to port 1180
and port 443 to port 1181. These firewall rules seem to be a convention at company/personal network, so was not removed when apache was configured on these hosts. Instead, httpd is configured to use ports 1180 and 1181. The danger of removing the iptables setup was that a later RPM update might bring back these settings and cause an outage. However, if moving configuration files between the internal and external apache servers, one must remember this difference, along with the different directories used.
Dispatcher flush
The cache kept on the dispatcher systems is cleared using a Dispatcher flush agent. For company, the publishers run the dispatcher flush agent. The AEM publish instances each run two dispatcher flush agents:
The cache kept on the dispatcher systems is cleared using a Dispatcher flush agent. For company, the publishers run the dispatcher flush agent. The AEM publish instances each run two dispatcher flush agents:
- ● one for the external facing apache instance for this publish instance (ext-www.company.net)
- ● one for the internal facing apache instance for this publish instance (int-www.company.net)
Comments
Post a Comment