http://qs321.pair.com?node_id=561635


in reply to an interesting web frameworks benchmark

I am wondering how important these benchmarks are. I am under the impression that response time of any reasonably-sized application is determined mostly by the time you need to run business logic (such as database queries). That part of the application is always custom code outside of whatever framework you use. If this assumption is correct, the raw performance of the framework is not too important. It becomes much more relevant how easy, fast, and flexible the framework is in supporting you in writing that business logic.

On the other hand, the above statement applies more to traditional frameworks like CGI::Application, whereas "full-stack" frameworks such as Jifty or Rails also aim to provide the underpinnings for the business logic part (such as object-relational mappers), in the extreme case completely and exclusively controlling the database. If you go this way, it is probably quite essential to look at how this impacts on performance.

The article states that although "we didn’t come up with complex queries", "when connecting rails to Oracle the performance dropped to the extent it made any production use of the product useless". Anyone has any idea what went wrong there?

  • Comment on Re: an interesting web frameworks benchmark

Replies are listed 'Best First'.
Re^2: an interesting web frameworks benchmark
by perrin (Chancellor) on Jul 17, 2006 at 03:05 UTC

    On the other hand, the above statement applies more to traditional frameworks like CGI::Application, whereas "full-stack" frameworks such as Jifty or Rails also aim to provide the underpinnings for the business logic part (such as object-relational mappers)

    Exactly. These are tools that are trying to supply a lot of pre-built code to you, so it matters more how much overhead they add. You will, in theory, run quite a lot of Rails code on every request.

    The article states that although "we didn’t come up with complex queries", "when connecting rails to Oracle the performance dropped to the extent it made any production use of the product useless". Anyone has any idea what went wrong there?

    Yes. I have read that Ruby has weak Oracle support in it's database libraries. Most people are using PostgreSQL or MySQL, so it doesn't matter to them. Perl is lucky to have really great Oracle support. The DBD::Oracle module has great performance.