Dynamic Page Generation and dynamically generated sites, generate web pages "on the fly", binding content with a presentation layer (look and feel) and even applying rules about that presentation (personalisation).
The exact presentation of a single page can differ each time the page is created. In comparison of course, a statically generated web site serves up the same hard-coded content in each instance of its presentation.
It is a therefore, a logical conclusion that any dynamically generated web page will take more processing power to deliver to the web browser than a static page. So how do you choose whether you need a dynamic site or a static site or a combination of both?
| Dynamic Web Page | Static Web Page |
|---|---|
| Easy maintenance - presentation layer is separated from content. For example, if you need to change an object in the presentation layer, i.e. a standardised banner, then you change it in one place and one place only | Complex maintenance procedures. For example, if you require a change to a common site element such as the navigation bar then you will need to apply changes to the source code for each page in the site. You will also need to upload each of the changed pages to the live site. |
| Can provide personalised content and presentation based on the profile of the browser user. | Cannot be changed - the page will always serve the same content no matter who is the viewer or what is the context. |
| Slower to render - more effort is required for page generation at the moment of presentation | Fast to render |
| URL integrity: management of site links is made easier with links appearing automatically when relevant new pages are added and disappearing when pages are removed | Difficult to manage links; risk of "broken links" display. For example, when you remove a static web page that is linked to from other pages you need to go to the other pages and remove the links manually. |
Therefore, one obvious drawback of using a CMS, is that the dynamic rendering of content combined with the presentation results in slower performance than simple HTML pages. Even with the improved performance of software and hardware of servers, there is still an overhead for generating the dynamic content.
What is required for web sites with a high activity rate, is for the dynamic generation of web pages to be combined with the high performance of simple HTML pages. This has been able to be achieved by caching, which essentially delivers a dynamic page that has been pre-generated.