5 points
*

It’s worth noting that the http.server module is based on socketserver.BaseServer.serve_forever, which is a atrocious.

It uses a busy loop with a delay, so it both burns CPU and is unresponsive.

(The fact that Python has had broken signal handling since 3.5 also hurts - EINTR should never be ignored from blocking calls)

permalink
report
reply
2 points

I was just about to uninstall nginx…

On a serious note: I’m not sure of the details of socketserver but I would think opening a socket would not be a cpu intensive process.

permalink
report
parent
reply
1 point

The comments in the code explain exactly what the problem is and how to fix it, and it would take less than 30 minutes to implement and test that (assuming you don’t just grab someone else’s version - there’s a reason I know the time), but nobody has committed it in … at least 13 years since the comment was written; I’m not digging any further through imported SVN history.

permalink
report
parent
reply
3 points

Thats neat. Thanks for sharing

permalink
report
reply

Python

!python@programming.dev

Create post

Welcome to the Python community on the programming.dev Lemmy instance!

📅 Events
Past

November 2023

October 2023

July 2023

August 2023

September 2023

🐍 Python project:
💓 Python Community:
✨ Python Ecosystem:
🌌 Fediverse
Communities
Projects
  • Pythörhead: a Python library for interacting with Lemmy
  • Plemmy: a Python package for accessing the Lemmy API
  • pylemmy pylemmy enables simple access to Lemmy’s API with Python
  • mastodon.py, a Python wrapper for the Mastodon API
Feeds

Community stats

  • 733

    Monthly active users

  • 469

    Posts

  • 2.4K

    Comments