nanog mailing list archives

Re: Speaking of DNS server software...


From: Ryan Kozak via NANOG <nanog () lists nanog org>
Date: Mon, 11 Aug 2025 02:34:56 +0000

This is not necessarily true anymore. As of Python 3.13 the GIL is now optional, though it defaults to enabled. They 
are slowly working towards flipping that. 

https://peps.python.org/pep-0703/

Regards,
Ryan


-------- Original Message --------
On 2025-08-10 10:40, Michael Crute via NANOG <nanog () lists nanog org> wrote:

 On Aug 10, 2025, at 07:43, Chris Woodfield via NANOG <nanog () lists nanog org> wrote:
 >>> On Aug 10, 2025, at 03:40, Etienne-Victor Depasquale via NANOG <nanog () lists nanog org> wrote:
 >>>
 >>>
 >>> Python is, well, Python. It makes as much sense to me to write a DNS
 >>> server in Perl or Javascript, which is to say: not much.
 >>
 >> I don't follow. What's the objection?
 >>
 >
 > I’d consider two off the top of my head -
 >
 > 1. Performance delta, but that’s likely anywhere near the issue with python than it is with earlier scripting 
runtimes. While it’s been a while since I’ve done a side-by-side comparison, I’d argue that once code is compiled, 
cpython runtime performance is far more akin to Java than perl or JS. Still not as performant as C or Go runtimes, 
though; bytecode is still bytecode.
 
 The CPython interpreter does still have a global interpreter lock as well which causes thread synchronization on 
data access. You can mitigate this somewhat by running multiple instances of a server or asynchronous programming 
techniques but it still has a pretty substantial performance impact on highly concurrent systems. This is why most 
people scaling Python do so horizontally. I'd personally avoid something like Python for DNS or at least load test it 
very carefully before using it in production.
 
 ~mike
 _______________________________________________
 NANOG mailing list
 https://lists.nanog.org/archives/list/nanog () lists nanog org/message/MBUKLDNVMTFCGLAWN5LJKFP4XLTGOM2K/

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
NANOG mailing list 
https://lists.nanog.org/archives/list/nanog () lists nanog org/message/ZSZWMQMNUVXP3WYWAJ3PBTFNLTRXOEJ4/

Current thread: