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/

Reply via email to