[sr-dev] SHM memory usage Kamailio 1.4.4

Robin Vleij robin at swip.net
Tue Nov 10 08:40:36 CET 2009


Henning Westerholt wrote:

Hi Henning!

> btw, there is no need to re-compile the server just to change this
> setting, its a normal daemon binary parameter. 128 MB should be really
> fine, given the load you quoted.

Ah, OK. Missed that. I had already defined the -m as 256, wasn't aware
that that was shared. So I'll let it run and see how it goes and if it
will keep growing till it reaches 256.

> With today memory sizes/ prizes you could use for example 512 MB, which
> should give you plenty of room even in really abnormal load conditions.
> And as its shared, you'll have still plenty of room for e.g. the database.

Yep. It's basically to just use a huge amount and then normally you
wouldn't hit it. I understand from all of this that the memory "growing"
is really something that is not specific to my setup here.

> You mentioned the the loops a few times, normally they should be pretty
> fast detected by max forward counter checks and additionally by
> diversion header checks?

Well, it's more like this. A customer sends an invite, which is really
to himself (failboat). So I send it to him (directly or via a PSTN
gateway, depending on the routing setup). Which causes (for example when
their PBX has a forwarding) a new invite to me, new call leg. Untill one
of both sides dies or is congested. That's normally not Kamailio, so
that's the good news. Only thing then is the memory usage after this
spike. I'm also running spike, so in the end I just send them 480's back.

> With the memory debugging you could dump all the allocations during
> runtime, but they are a bit hard to read for a non-developer. But this
> way you could reproduce "call by call" how your server behave and how
> the situation develops.

I had this on and it was a LOT of info. :) I made some calls and it
showed that there's lots of stats and init stuff, for the rest nothing
shocking. But as you said, I'm not a dev so I might have missed shocking
errors. :)

> If you'd have a leak in a common used code path, then you'll run out of
> memory pretty fast, like in a few days. If your servers are stable (like
> some weeks or month) with the setting you use at the moment, i don't
> think there is much to worry.

OK, I'll keep an eye on it. Will run with 128MB for now and see how it
grows with the load. I was looking at a 1.4.4 -> 1.5.0 upgrade, but that
was a bit more complicated than 1.3 -> 1.4 because of the database
layout and some changed modules. Have to write a failback plan before I
upgrade. Might also wait for 3.0.0, which sounds interesting.

/Robin

-- 
Robin Vleij
robin at swip.net



More information about the sr-dev mailing list