Platform Software Stack

From LongJump Support Wiki

Platform Software Stack

This diagram shows the server processes that make up a typical platform:

Server processes.png
Application Server
The Application Server is a web app that runs in the Apache Tomcat container, so it can be deployed as a standalone web server. That configuration is useful for testing, experimentation, and other low-volume scenarios:
Platform as webserver.png
(Optional) Apache HttpD
Alternatively, the Apache httpd web server can be used to serve static content. In that case, the platform runs as an application server behind the Apache httpd web server. Those instances can be running on the same server, or on different servers, so either of these configurations is possible:
Platform with apache webserver.png
MySQL Database
MySQL is a relational database with capacities for redundancy, failover, backup, distributed access, and transactional integrity. That platform makes data look like Java objects to application developers. That makes applications easier to develop. But under the covers, the reliability and robustness of a mature relational database provides for data safety and rapid access.
Replicated Database
Database replication is a virtual necessity for any successful deployment. It safeguards data, and it allows for efficient backup and reporting from the replicated database, to minimize response time to users.
Memcached
The MEMory CACHE Daemon (memcached) is an optional, but highly recommended process that stores frequently-accessed data in memory, so it can be retrieved with maximum speed.