Architecture

Cosmos achieves its performance by utilizing a hybrid dynamic-static architecture that combines the dependability and efficiency of a static website with a dynamic site dedicated to content needing regular updates. Additionally, a third web application, referred to as the "editor," is employed to simultaneously manage content on both platforms.

Hybrid Static-Dynamic Design

This approach takes advantage of the fact that the majority of a web page's size in bytes is made up of assets such as images, CSS, and JavaScript files. A single web page may contain numerous such asset files. These files are typically served through a "static" website.

The HTML web pages are served from a memory-optimized “dynamic” website--which is its only task.

The "Editor" web application serves as a platform for users to create and modify content. It handles assets on the static site using a file manager, code editor, and image editor. For the dynamic site, it manages web pages with a WYSIWYG editor (CKEditor) and a code editor powered by the Visual Studio Code engine.

Decoupled Approach

By having the Editor separate, it unburdens the dynamic website from the overhead associated with editing web pages or uploading or managing files on the static website.  This ensures the dynamic website is always as fast as possible.

CDN and Firewall Integration

Whenever a web page is "published," the Editor automatically notifies the CDN to update the altered content on both static and dynamic sites. Presently, Cosmos is compatible with Azure CDN (including Edgio and Microsoft) and Sucuri.

Cosmos also is built to work well with web application firewalls such as Azure Front Door and Sucuri Firewall and CDN.