Skip to Content.
Sympa Menu

devel - [sympa-dev] Optimizations of performances

Subject: Developers of Sympa

List archive

Chronological Thread  
  • From: Olivier Salaün <address@concealed>
  • To: address@concealed
  • Cc: address@concealed
  • Subject: [sympa-dev] Optimizations of performances
  • Date: Wed, 01 Aug 2007 17:59:14 +0200

We were reported some performance issues with the latest version of Sympa when running many K lists. We have investigated and we've optimized the code as described below. We've carried benchmarks on a server with 800 lists, mainly concentrating on optimizing the web interface responses. Therefore we've performed repeated requests while collecting profiling data. The procedure is described here : http://www.sympa.org/wiki/faq/performances. We've ended up reducing the processing time of 10 /sympa/home requests from 7.2 seconds to 2.9 seconds. The optimizations mainly concerns pieces of the code that get called for each hosted list ; therefore the new code should help reducing the overhead for list services with a large number of lists.

List of the optimizations :

1. reducing the do_log() calls thanks to an installation trick that
makes do_log() calls conditional to the current log_level
2. generalizing the use of List objects as parameters, thus reducing
calls to List::new()
3. limiting the use of file locking while checking list config files
updates

(1) saved 3.7 sec during our tests
(2) + (3) saved 1.5 sec

We hope that some big sites will find some time to evaluate this new version of Sympa : http://www.sympa.org/distribution/sympa-5.4a.1.tar.gz
Please report us the results.

We'll now start another optimizing work. The goal is to reduce the memory usage of sympa processes.
Thanks to the feedback from Charles and Sergiy, it should not take too long before we get significant results.



  • [sympa-dev] Optimizations of performances, Olivier Salaün, 08/01/2007

Archive powered by MHonArc 2.6.19+.

Top of Page