<div dir="ltr">Hi Alex,<div>Thanks for your help.</div><div>I think t_replicate is the best option for me.</div><div>I expect about 300,000 to 400,000 end points and maybe 10% of them will send simultanoues requests per second,  so will one instance still be enough?</div><div>And what is the ratio between shared memory and available RAM if my machine is only dedicated to kamailio? </div><div><br></div><div>Thanks again for your quick and direct responses.</div><div>Ahmed</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Dec 13, 2014 at 7:43 PM, Alex Balashov <span dir="ltr"><<a href="mailto:abalashov@evaristesys.com" target="_blank">abalashov@evaristesys.com</a>></span> wrote:<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="">On 12/13/2014 12:33 PM, Ahmed Salem wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Is there any other way other than t_suspend/t_continue that I can use to<br>
scale kamailio and still support push notifications.<br>
</blockquote>
<br></span>
Well, one factor is that Kamailio is very high-performant and scales very well in just one instance. Just how many clients do you have registered and how many messages per second do you want to process? Unless you're building an astronomically high-volume, national-scale service and realistically expect to have millions of endpoints, one Kamailio instance should probably be fine.<br>
<br>
Failing that, there are a variety of ways to push messages to other Kamailio instances. The easiest generic way to send a message is using a synthetic request through uac_req_send():<br>
<br>
<a href="http://kamailio.org/docs/modules/4.2.x/modules/uac.html#uac.f.uac_req_send()" target="_blank">http://kamailio.org/docs/<u></u>modules/4.2.x/modules/uac.<u></u>html#uac.f.uac_req_send()</a><br>
<br>
You can receive it (and the arbitrary payload you have put in it) on the other server and do something with it.<br>
<br>
You can also replicate requests using TM, if appropriate:<br>
<br>
<a href="http://kamailio.org/docs/modules/4.2.x/modules/tm.html#tm.f.t_replicate" target="_blank">http://kamailio.org/docs/<u></u>modules/4.2.x/modules/tm.html#<u></u>tm.f.t_replicate</a><br>
<br>
Also, some modules have started to use DMQ for distributing state:<br>
<br>
<a href="http://kamailio.org/docs/modules/4.2.x/modules/dmq.html" target="_blank">http://kamailio.org/docs/<u></u>modules/4.2.x/modules/dmq.html</a><span class="HOEnZb"><font color="#888888"><br>
<br>
-- Alex</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
-- <br>
Alex Balashov - Principal<br>
Evariste Systems LLC<br>
235 E Ponce de Leon Ave<br>
Suite 106<br>
Decatur, GA 30030<br>
United States<br>
<br>
Tel: +1-678-954-0670<br>
Web: <a href="http://www.evaristesys.com/" target="_blank">http://www.evaristesys.com/</a>, <a href="http://www.alexbalashov.com/" target="_blank">http://www.alexbalashov.com/</a><br>
<br>
______________________________<u></u>_________________<br>
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list<br>
<a href="mailto:sr-users@lists.sip-router.org" target="_blank">sr-users@lists.sip-router.org</a><br>
<a href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users" target="_blank">http://lists.sip-router.org/<u></u>cgi-bin/mailman/listinfo/sr-<u></u>users</a><br>
</div></div></blockquote></div></div>