[Serusers] Replication problem
Greger V. Teigre
greger at teigre.com
Tue Aug 2 08:05:21 CEST 2005
Andreas Granig wrote:
> Greger V. Teigre wrote:
>> :-) Jan participated in a discussion on serusers on a new cache
>> system where all locations where not loaded at start-up, but rather
>> at need.
> Well, I just read the thread at
> http://lists.iptel.org/pipermail/serusers/2005-May/019867.html and for
> me as a guy who wants to run a scalabe system with a minimum of
> afford and as soon as possible, one question comes up: is it really
> worth the efford to implement such a caching system?
I see your point. However, SER has many different uses and many different
deployment scenarios. In some scenarios the focus is on high through-put of
20K users (who are divided across registrars), DNS SRV is used, and Linux HA
is used for failover. Relying on a database lookup for every single
lookup("location") will reduce performance quite a lot.
> Don't understand me wrong, I'm sure there are a lot of people who
> benefit from this caching mechanism in terms of performance, but my
> experience with this is, well, very bad, when using it in a bigger
Again, I think it depends on your setup. The setup mentioned above does not
use DB replication, but separate databases and a path type implementation
for routing between Registrars for incoming INVITEs.
> For me (and I think a lot of other people, like Paul, who mentioned it
> too in the above thread) the performance won due to the cache lookup
> is so minimal in combination with my 10-15 other mysql queries and
> 1-2 enum queries per call, that I really don't care, especially when
> thinking about the advantages of a consistend location table in the
> backend DB:
This I don't understand either. If you do user preferece lookup, it's for
the first INVITE, lookup("location") is done for far more messages than just
the first INVITE. And then you have nathelper's ping every 10-30 seconds...
> No need to replicate on SIP level anymore (and there's no really
> usable mechanism for that for more than two SER nodes), no need to
> distribute other contacts like aliases to every single SER node using
> a remote fifo hack, the need of much less memory, much faster startup
> time and so on, and that all for just a few more milliseconds of
> So IMHO the option of disabling the cache absolutely makes sense *in
> some circumstances*, like large scale systems.
Yes, I agree. It would be interesting to run a test on a such system to see
the actual performance impact.
More information about the sr-users