On 5/10/07, Daniel Dekany wrote:
>
> What FreeMarker or any other MVC template does
> is just too little compared to all the other thing that has to be done
> to serve a HTTP request (possibly with the exception of some really
> extreme applications). Note that these "other things" include the
> business logic methods called from the template, which often confuse
> users. Like, they call a method that is quite resource intensive, and
> then say that the template has executed this and that slow. They only
> forget the most of that time was spent outside FreeMarker.
>
I would strongly agree with this assertion. When Jive Software switched our
applications from jsp to freemarker we did do a quick performance analysis
of the change, and while freemarker didn't increase performance outright,
it
also didn't really negatively impact the performance either. Most of the
time taken to service a request was not taken up by freemarker but rather
by
the core API and action framework. Freemarker was definitely a *huge*
improvement for us as it improved things in a lot of other aspects:
* It's performance is consistent across application servers and is more
then
fast enough for our requirements. The same cannot be said for JSP.
* The template parsing time is fast - especially when compared to compiling
JSP's in some application servers. This has a huge benefit for us in the
initial customer review process as previously potential customers would
note
that the application felt very slow - almost entirely because of the delay
in compiling each JSP page (precompilation wasn't possible for us in most
circumstances)
* Freemarker's errors messages are excellent - it's obvious what went
wrong.
With JSP and some other template solutions it can often be very difficult
to
isolate an issue down to the original template source code.
* If there's an issue we only have to fix it in one place. With JSP we kept
having to workaround many issues with application server bugs.
* It's powerful enough for our needs - velocity didn't have the features we
required.
I hope this helps bring a bit more real world perspective to this
discussion
Regards,
Bruce Ritchie
Jive Software