Last week I attended a very interesting webinar from Jahia.
The Jahia webinar was mainly about different types of configurations that Jahia CMS supports. It was interesting to see how Jahia flexibility helps and adapts to different types of architectures. Jahia's ability, in matters of becoming part of several cluster configurations or different DMZ zones in real architectures and configurations, was very pleasant to see.
The webinar touched two big approaches: standalone and cluster architectures.
The standalone approach is a simple one server configuration, and all the Jahia CMS processes happen in it. Editor mode, publish mode, web server mode, index mode, all of these modes are in same server. This type of configuration is mainly for small sites. A site that doesn't get too many visits - probably an average of less than 50.000 visits per month. Although, keep in mind that the server needs to have good and enough resources to sustain its performance. Information on server resources and more will be in a following post.
Cluster architectures; the webinar mentioned a wide variety of cluster configurations, you can suggest one and there is probably a Jahia support for that. Architectures for multiple physical or virtual servers, multiple databases, multiple Jahia process functionalities, DMZ zones, synchronizations between servers and databases were mentioned in this webinar.
The Jahia team demonstrated Jahia's enterprise-grade ability in setups where a Jahia instance only does a particular job, i.e. you can tell an instance to only do publishing processes, meaning that CMS editors will publish changes in that instance. Another instance does indexing jobs, some others do web server jobs, and another instance is for CMS editor access. OR you can setup so that one instance handles multiple tasks, like publishing and CMS editor, or web server and publishing among some others. There is the opportunity to set instances for DMZ zones and instances to do the synchronization process among the different databases.
The way architecture with multiple databases works is very interesting. One database (1) is connected to the web server and is the one that serves the multiple client requests. The other database (2) is connected to edit and publish CMS services. There is an extra process, this process runs daily or whenever the editor wants to send the change to the first database (1) - the one that serves client requests. The sync process synchronizes the second database (2) with data from the first one (1) and if needed vice versa.
In the webinar, Tarek Elachkar, the speaker, also mentioned some server specifications for a Jahia CMS server, and he also gave some examples of real Jahia implementations. I will share more details of this in my next post.