This document will attempt to provide a very broad view of the system's architecture.

Core System

The system is split into two large systems: admin and application. The admin system is primarily used for managing content, changing site settings and templates, and reconfiguring the site's layout. The application system is used to combine templates and content to produce pages that are served to the site's readers. The two systems together are collectively referred to as the content management system or CMS for short.

The two systems are physically separated from one another. The administrative tasks and interface are served by servers separated from the application systems. This was done for the following reasons:

  • To prevent issues in one system from affecting the other (e.g. if the admin servers go down for some reason related to the software, the application servers will continue to deliver content unhindered)
  • Hardware can be tuned according to the software's needs since they are dedicated environments
  • Caching restrictions do not exist for the admin nodes, but are heavily enforced on application systems