1,615 Views |
Three years back, one of our customer asked for a solution, for their website needs the performance of the static site and at the same time, they want the features of content management in a CMS. We after doing some research offered them a hybrid solution of developing the site in Drupal(CMS) and then export the site as HTML & CSS (static). Using the Drupal, their editor team can work on content workflow. They can create, edit, preview and publish the content. Then the website development team will export the site as HTML, JS and CSS using a module and these files are deployed in the production.
They have not asked for personalised content, if so, then it would have become a complex work to deliver, but now we have JAMstack architecture as the solution for this. We have tools like open-source headless CMS Strapi, Cockpit, Directus, etc. for building microservice API or using same Drupal decoupling will enable us to provide the microservice API and still use the backend interfaces as usual for content workflow.
This mainly solves two major problems of CMS Performance & Security, but this comes with the extra load on publishing. As far as for end-user, this approach gives them a better experience, which is our primary goal to achieve.
As these sites are static, the website can be placed on CDN’s directly, no need for a server, so you can think how fast the site will be rendered. Content rendering is happening only in the client browser major load of rendering the content is shifted from server to client. This drastically reduces the rendering time of the website. Majority of the assets of the websites are loaded on the first load itself, then on subsequent page request, only assets and data required for that page will get loaded.
As the site is hosted in CDN directly and all personalisation is handled using microservice API, the surface area for attack is highly reduced, so your site is highly secured. Authorisation mechanism is simple and safe, we have to send a token with each Request URL.