Cluster Deployment

From AgileApps Support Wiki
Revision as of 23:32, 23 January 2014 by imported>Aeric

The following diagram shows the kind of architecture that is typical for a production system:

File:Prototype deployment.png

The key points depicted in the diagram are:

  • The platform is deployed across multiple servers.
  • A Load Balancer distributes traffic across the web servers.
  • Apache httpd is the front-end web server for the application server.
    Learn more: Installing and Configuring Apache for Use with the Platform
  • The Messaging server handles all social media interactions (e.g. Facebook and Twitter).
    Messages are exchanged between it and the LongJump server, to manage those interactions.
    The HornetQ server maintains the store-and-forward message queue, for those communications.
    Learn more: Configuring the Messaging Server
  • Memcached servers reduce response time by caching data in memory.
    Learn more: Configuring memcached
  • The suite of memcached servers are accessed by all application servers, backend as well as front end.
  • The critical backend processes shown here (import, export, and scheduling, which uses quartz) are all being run from a single platform instance. But additional servers can be employed, as load demands.
    Learn more: Managing Backend Services
  • Document storage (which includes pictures and image files) is managed separately from the database.
  • The database is running on its own server, for added performance.
    Learn more: Configuring MySQL to Run on a Separate Server
  • The primary database instance and the replication instance are each running on separate servers, both for reliability and for performance of read-intensive operations.
    Learn more: Using Replication with Different Master and Slave Storage Engines
  • Requests that access and update, whether coming from a user or a backend process, go to the primary database, while read-intensive operations (backups, reports, exports) are executed on the replicated database.
    Learn more: Running Reports and Storage Checks On a Replicated Database Server.