<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Exchange Server">
<!-- converted from rtf -->
<style><!-- .EmailQuote { margin-left: 1pt; padding-left: 4pt; border-left: #800000 2px solid; } --></style>
</head>
<body>
<font face="Calibri" size="2"><span style="font-size:11pt;">
<div style="margin-top:5pt;margin-bottom:5pt;"><font color="blue">Hi Liviu, </font></div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font color="blue">Thank you for the response. </font></div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font color="blue">2) Regarding the feedback, this is what I observed till now. </font></div>
<ol style="margin:0;padding-left:36pt;">
<font color="blue">
<li style="margin-top:5pt;margin-bottom:5pt;">Without HTTP &#8211;150 calls per sec for almost 100K calls =&gt; Looks good.</li><li style="margin-top:5pt;margin-bottom:5pt;">With HTTP being sync &#8211; </li></font>
</ol>
<ol type="a" style="margin:0;padding-left:72pt;">
<font color="blue">
<li style="margin-top:5pt;margin-bottom:5pt;">Children parameter =1 , only 4 cps, since depending on the query and the response, it takes time to respond. </li><li style="margin-top:5pt;margin-bottom:5pt;">Children parameter = 50, 100K calls sent at 100 cps =&gt; OpenSIPS handles&nbsp; 95cps - 3000&#43; active calls</li><li style="margin-top:5pt;margin-bottom:5pt;">Children parameter = 20, 100K calls sent at 35 cps =&gt; OpenSIPS handles&nbsp; 35cps</li></font>
</ol>
<ol start="3" style="margin:0;padding-left:36pt;">
<font color="blue">
<li style="margin-top:5pt;margin-bottom:5pt;">With HTTP being async tested with the latest fix included on main branch</li></font>
</ol>
<div style="margin-top:5pt;margin-bottom:5pt;padding-left:36pt;"><font color="blue">=&gt;&nbsp;&nbsp; Children parameter =8, 10K calls sent at 25cps =&gt; OpenSIPS handles&nbsp; 23 cps, with 1200&#43; active calls. </font></div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font color="blue">The result with async may improve in a release version from the development branch I hope.</font></div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font color="blue">Regards,<br>

Agalya&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </font></div>
<div><b>From:</b> Liviu Chircu [<a href="mailto:liviu@opensips.org">mailto:liviu@opensips.org</a>]
<br>

<b>Sent:</b> Monday, September 19, 2016 11:18 AM<br>

<b>To:</b> Ramachandran, Agalya (Contractor) &lt;Agalya_Ramachandran@comcast.com&gt;; OpenSIPS users mailling list &lt;users@lists.opensips.org&gt;<br>

<b>Subject:</b> Re: FW:[OpenSIPS-Users] Asynchronous operation for REST queries</div>
<div>&nbsp;</div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font face="Courier New" size="2"><span style="font-size:10pt;">Hi, Agalya!</span></font></div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font face="Courier New" size="2"><span style="font-size:10pt;">1) Regarding connection reuse optimization, I haven't done any research on this topic. In other words, libcurl will be managing its connections through
its default settings / parameters, whichever they are. The module is mature enough, maybe now is a good time to look into this feature.</span></font></div>
<div style="margin-top:5pt;margin-bottom:5pt;"><font face="Courier New" size="2"><span style="font-size:10pt;">2) Since you're doing lots of obviously blocking operations (HTTP transfers), then you will definitely need more processes. However,&nbsp;I noticed lots
of transfers are quickly completed, without requiring async, so you don't want too many processes if all requests work like that. Just tune according to your needs until you find a sweet spot. You could even share the performance results, I'd love to hear some
feedback.</span></font></div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;">Liviu Chircu</span></font></div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;">OpenSIPS Developer</span></font></div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;"><a href="http://www.opensips-solutions.com"><font color="#0563C1"><u>http://www.opensips-solutions.com</u></font></a></span></font></div>
<div>On 19.09.2016 17:57, Ramachandran, Agalya (Contractor) wrote:</div>
<div><font color="blue">Hi team/Liviu, </font></div>
<div><font color="blue">&nbsp;</font></div>
<div><font color="blue">Couple of &nbsp;questions for clarification. </font></div>
<ol style="margin:0 36pt 0 0;padding-left:72pt;">
<font color="blue">
<li>I see for every HTTP request(for both sync and async), TCP ports are being opened and closed. </li></font>
</ol>
<div><font color="blue">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Are we not using same port and pooling the request in a particular port if we are hitting simultaneous requests? </font></div>
<ol start="2" style="margin:0 36pt 0 0;padding-left:72pt;">
<font color="blue">
<li>Children parameter in the config file - I understand the use case of this is to spawn multiple threads. </li></font>
</ol>
<div style="padding-left:36pt;"><font color="blue">If we want to handle more load in OpenSIPS, we should increase this number correct? </font></div>
<div style="padding-left:36pt;"><font color="blue">So when increasing this number of children process we should take care of CPU utilization and according to the no of CPU and RAM we used in our Linux system.</font></div>
<div style="padding-left:36pt;"><font color="blue">&nbsp;</font></div>
<div><font color="blue">Correct me if am wrong in my understanding of the above questions.</font></div>
<div><font color="blue">&nbsp;</font></div>
<div><font color="blue">Regards,</font></div>
<div><font color="blue">Agalya</font></div>
<div><font color="blue">&nbsp;</font></div>
<div><font color="#1F497D">&nbsp;</font></div>
<div><b>From:</b> Liviu Chircu [<a href="mailto:liviu@opensips.org"><font color="#0563C1"><u>mailto:liviu@opensips.org</u></font></a>]
<br>

<b>Sent:</b> Thursday, September 15, 2016 3:53 AM<br>

<b>To:</b> Ramachandran, Agalya (Contractor) <a href="mailto:Agalya_Ramachandran@comcast.com"><font color="#0563C1"><u>&lt;Agalya_Ramachandran@comcast.com&gt;</u></font></a>; OpenSIPS users mailling list <a href="mailto:users@lists.opensips.org"><font color="#0563C1"><u>&lt;users@lists.opensips.org&gt;</u></font></a><br>

<b>Subject:</b> Re: FW:[OpenSIPS-Users] Asynchronous operation for REST queries</div>
<div>&nbsp;</div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;">On 14.09.2016 21:33, Ramachandran, Agalya (Contractor) wrote:</span></font></div>
<div><font color="#1F497D">Are you going to add one more parameter &#8220;connect_polling_interval&#8221; and what will be use case of it? </font></div>
<div><font color="#1F497D">Is it replacement for 10% wait time logic?</font></div>
<div><font face="Times New Roman ,serif" size="3"><span style="font-size:12pt;">Yes.<br>

<br>

</span></font></div>
<div><font color="#1F497D">&nbsp;</font></div>
<div><font color="#1F497D">Also, I observed in the case of async call, it takes ~90 to 100ms to open the port itself. Is this expected behavior?</font></div>
<div><font face="Times New Roman ,serif" size="3"><span style="font-size:12pt;">Yes.<br>

<br>

<br>

</span></font></div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;">Liviu Chircu</span></font></div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;">OpenSIPS Developer</span></font></div>
<div><font face="Courier New" size="2"><span style="font-size:10pt;"><a href="http://www.opensips-solutions.com"><font color="#0563C1"><u>http://www.opensips-solutions.com</u></font></a></span></font></div>
<div>&nbsp;</div>
<div>&nbsp;</div>
</span></font>
</body>
</html>