[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Performance observations about 1.2 and thoughts on the future

Hi all;

One issue I have noticed in my 1.2 release candidate experience is
that the system appears slower than it was with 1.1 and 1.0.  I have
run a number of tests and concluded that a large part of the problem
seems to be the increasing number of CPAN dependencies.  For example,
turning off server-side prepare has no noticeable effect on page load
time.  Performance is still. I think quite acceptable, but we need to
be looking at improving it in the future, especially for
high-concurrency environments, and especially as we move more code
into CPAN dependencies.

In short, while things still look fine to me, if we continue in this
way, point of sale interfaces, etc. will become less advantageous.  My
suggestion at the moment is that we start looking into what is going
to be required to support mod_perl in 2.0.  My initial thoughts are:

1)  Reviewing user object constructors to ensure they are mod_perl safe
2)  Ensuring that we have destructors where appropriate
3)  Ensuring that all pipes are properly cleaned up.
4)  Moving all workflow scripts into namespaces.  Maybe LedgerSMB::Scripts?

Moving to mod_perl would effectively mean that all CPAN modules used
would be cached in memory on the web server.  It would not be
appropriate for all installations immediately.

Is there anything else I have missed?

Best Wishes,
Chris Travers