<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=koi8-r">
<style type="text/css" style="display:none;"><!-- P {margin-top:0;margin-bottom:0;} --></style>
</head>
<body dir="ltr">
<div id="divtagdefaultwrapper" style="font-size:12pt;color:#000000;font-family:Calibri,Helvetica,sans-serif;" dir="ltr">
<div id="divtagdefaultwrapper" style="font-size: 12pt; color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;" dir="ltr">
<p style="margin-top:0;margin-bottom:0">Hi Remi,</p>
<p style="margin-top:0;margin-bottom:0">Thank you for your answer and recommendation.</p>
<p style="margin-top:0;margin-bottom:0">We have basic configuration loadbalancer and seems our problem in it.</p>
<p style="margin-top:0;margin-bottom:0"><span style="font-size: 12pt;">I will try to add the same backend server (now we have just one record for each separate server):</span><br>
</p>
<p style="margin-top:0;margin-bottom:0"><span style="font-size: 12pt;"></p>
<div>newServer({address="127.0.0.1:5300", qps=100000, name="lacalpdns10"})</div>
<div>newServer({address="x.x.x.x", qps=200000, name="pdns12"})</div>
<div>newServer({address="x.x.x.x", qps=200000, name="pdns13"})</div>
etc.</span>
<p></p>
<p style="margin-top:0;margin-bottom:0"><span style="font-size: 12pt;">How many the same backend servers I can use (your reccomendation for a lot of qps)? </span></p>
<span>Could you explain more information about the 'sockets' parameter on the 'newServer()' . Is it mean 'reuseport'?</span></div>
<div id="divtagdefaultwrapper" style="color: rgb(0, 0, 0); font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols;" dir="ltr">
Thank you for your support!<br>
<br>
BR, Alexey<br>
<div style="font-size: 12pt; color: rgb(0, 0, 0);">
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>От:</b> dnsdist <dnsdist-bounces@mailman.powerdns.com> от имени Remi Gacogne <remi.gacogne@powerdns.com><br>
<b>Отправлено:</b> 9 ноября 2018 г. 19:41<br>
<b>Кому:</b> dnsdist@mailman.powerdns.com<br>
<b>Тема:</b> Re: [dnsdist] dnsdist capacity</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText">Hi Alexey,<br>
<br>
On 11/9/18 2:07 PM, Alexey Bokhanovskiy wrote:<br>
> Now we are using two DNS loadbalancers with seven servers powerdns and<br>
> we found that the capacity loadbalancer has limit approximately 50k qps<br>
><br>
> Our version of dnsdist is 1.3.3-1pdns.bionic.<br>
><br>
> Is 50kqps the limit of software or hardware? Or need to additional<br>
> configuration?<br>
<br>
This seems ridiculously low for your hardware, but it's hard to know for<br>
sure without seeing your configuration.<br>
For what it's worth, you should be able to reach easily 450k QPS without<br>
the packet cache being enabled and much more with it. I have seen one<br>
dnsdist handle around 1M qps at 100% cache hit ratio in an ideal setup<br>
in a lab. You should never reach that over a single dnsdist in<br>
production, but still :)<br>
<br>
You should first read [1], and tune at least setMaxUDPOutstanding(), use<br>
several threads to handle incoming queries and consider adding several<br>
newServer() directives (adding the same backend twice might help because<br>
you then have more threads handling the responses) and/or use the<br>
'sockets' parameter on the 'newServer()' directive depending on your setup.<br>
<br>
Then the next step should be to get some metrics using `carbonServer()`<br>
[2] and metronome [3], for example, so you know what's going on.<br>
Then you might want to upgrade your kernel (recent Linux kernels are a<br>
lot better at handling UDP packets) and tune your OS and your network cards.<br>
<br>
I would advise removing any rule that you have in dnsdist's<br>
configuration first and using one of the built-in load-balancing policy<br>
to be sure that Lua isn't your bottleneck. Please also remember that<br>
without the cache, dnsdist won't be faster than your backends, so<br>
perhaps benchmark them as well.<br>
<br>
Good luck!<br>
<br>
[1]: <a href="https://dnsdist.org/advanced/tuning.html" id="LPlnk991727" class="OWAAutoLink" previewremoved="true">
https://dnsdist.org/advanced/tuning.html</a><br>
[2]: <a href="https://dnsdist.org/guides/carbon.html" id="LPlnk648164" class="OWAAutoLink" previewremoved="true">
https://dnsdist.org/guides/carbon.html</a><br>
[3]: <a href="https://github.com/ahupowerdns/metronome" id="LPlnk25419" class="OWAAutoLink" previewremoved="true">
https://github.com/ahupowerdns/metronome</a><br>
<br>
Best regards,<br>
-- <br>
Remi Gacogne<br>
PowerDNS.COM BV - <a href="https://www.powerdns.com/" id="LPlnk561251" class="OWAAutoLink" previewremoved="true">
https://www.powerdns.com/</a><br>
<br>
</div>
</span></font></div>
</div>
</div>
</div>
<br>
******** IMPORTANT NOTICE ********<br>
The content of this e-mail is intended for the addressee(s) only and may contain information that is confidential and/or otherwise protected from disclosure. If you are not the intended recipient, please note that any copying, distribution or any other use
 or dissemination of the information contained in this e-mail (and its attachments) is strictly prohibited. If you have received this e-mail in error, kindly notify the sender immediately by replying to this e-mail and delete the e-mail and any copies thereof.<br>
<br>
Tele2 AB (publ) and its subsidiaries (“Tele2 Group”) accepts no responsibility for the consequences of any viruses, corruption or other interference transmitted by e-mail.
</body>
</html>