Jerome Martin wrote:
On Fri, 2007-03-30 at 16:16 +0300, Bogdan-Andrei Iancu
wrote:
Hi Jerome,
right, sometime is good to have thinks as clear as possible :).
Yep :-)
as update on the topic, openser 1.2 has a new,
improved timer
implementation (core and TM) - actually done by myself :) - and part of
the performance boost roots from there.
Which is, BTW, a great job :-)
thanks :)
For people interested in looking at what SER does, this message led me
to take a look a SER 2.0 documentation and bits of code, and it is not
immediatly evident that they are taking a radically different route
... they also improved timer granularity (down to a resolution of 62.5
ms).
openser 1.2 has a granularity of milliseconds - you can adjust it as you
want, based on your system requirements. Default value is of 100
milliseconds - the tests showed it is enough for high quality
retransmissions without any performance penalties.
They changed a bit parameters to configure various timers from config
file, and they of course retained the ability to change fr_timer and
fr_inv_timer (interesting for controlling max ringing duration)
on-the-fly on a per-transaction basis.
They also are currently developping a very interesting module called
"timer", which provides the ability to set timers on-the-fly, with
callback implemented as routes called when the custom timers fire.
This seems pretty simple in their model, the timer module being only
408 lines long (but I can't tell if this works already or not).
I agree with
you, there are a lot of thinks you can build, but the
question is about their importance (as usage). as you know, we want to
focus more one the hot topics (things really needed) and to avoid
wasting resources for thinks not needed at that moment.
An other puzzling fact is that SER's implementation of timers in tm
module is about half the size as OpenSER's .... I'm not sure we can
infer anything from this fact, still it made me curious.
well...size does not
matter ;) - also the code structuring may differ.
and so far I found no relation between size an quality for code :)
regards,
bogdan