Adriaan Bloem points to the downtime on Oracle’s website following its acquistion of Sun as an indicator that dynamic delivery is generally unsatisfactory. Certainly that website looked like it needed a decent application server on Monday. I wonder where they could get one.
The static vs. dynamic delivery debate is specific to the kind of content you’re producing. Generally, dynamic delivery is well-suited to:
- Time-critical content, such as news or user-generated content.
- Content that requires lots of automatic relationships and “see also” type links, including product catalogues. This is easier to generate through dynamic queries than it is through a complex relational static publishing model. This is a particular strength of Vignette.
- Segmentation and personalistion of content; a strength of FatWire. It can be really hard to deliver content aimed at specific users if you deploy static publishing, although SDL-Tridion has a go by implementing custom server tags into the application server layer.
More generally, you need to weigh up whether you need a dynamic model because you’re publishing lots of content that needs to be up to date, or a static model because you want to guarantee that the content will continue to be served. Either way, you need to be sure that you can change or remove content quickly as well as publish it, and you should follow best practice for delivery performance:
- Ensure caching is in place and decent parameters are set; use a CDN if you have a global audience or lots of very large media files.
- Optimise your images, CSS and JavaScript and try not to have too many of these being called from a single page.
- Use compression techniques, such as GZIP delivery.
- Ensure your CMS gives you a tool to purge your cache when you need to.
If Oracle are really concerned about their own website performance, expect them to buy Akamai some time soon.
