[dev] Performance issues with Horde Routes

Chuck Hagenbuch chuck at horde.org
Mon Aug 24 19:56:39 UTC 2009


Quoting Fabio Bacigalupo <fabio.bacigalupo at gmail.com>:

> I am experiencing performance issues with Horde Routes (version 0.4).
> We are using HR as part of the Seagull framework where the Horde
> Routes package is integrated very nicely.
>
> We have around 200 rules for Horde Routes to process. If I test with
> just one rule the function _createGens() takes 0,16ms. With 50 active
> rules the function takes around 18ms to pass. With all of them active
> the same function in Horde/Routes/Mapper.php takes a bit more than
> 1000ms on every page request to execute. It seems there is a
> correlation between the number of rules and the execution time which
> increases drastically on every rule added after a certain point.
>
> It's no surprise looking at the code of _createGens() which iterates
> through the list of rules three times.
>
> Has anyone else had the same issues? Did you find a solution? Is there
> an easy way to improve speed here? Is there a way to cache Horde
> Routes somehow?

Hi!

There is not currently a caching mechanism, but only because there  
hasn't been the need (until now). I think caching is probably the way  
to go here, though any improvements in _createGens would be welcome  
also. If you're interested in working on this I'd be happy to try and  
help with it. Otherwise, I'd ask that you open an enhancement request  
on http://bugs.horde.org/, so it doesn't get lost.

-chuck


More information about the dev mailing list