This site will look much better in a browser that supports web standards, but it is accessible to any browser or Internet device.
My idea is bulid the ideal cache. I thing the ideal cache should:
There is many ways how to do this, but only one way is 100% reliable. Reliable way is to check database output, changes in application code and generate some checksum (MD5). It's not hard to implement this because Smart separate Application Logic and Presentation Layer. When you want to check if something have beeen changed you can easily serialize data at presentation layer and get MD5 checksum.
In bechmarks I fount this:
In fact it's really easy to build ideal cache when you usa Smarty, because all assigned data to templates can be returned by this command: Get_Template_Vars. This function return an array and now we use nice function serialize to get an string. Now we have an string, but it can have 100 kbyt of values, because it can make an processor overhead an filesystem problem we have to make some checksum (MD5). Now we can easily use this checksum as Smarty Cache ID and save every output to difference file.
If you have very dynamic blok - e.c. timestamp, you can use an {dynamic} mark to insert dynamic value. But remember, dynamic block can be associated only from Smarty plug-in, not from application logic. But this is not disadvantage because you can easily create your own Smarty plug-in.