Skip to content
HomeVideosBooksBlogs
AllTop postsTopics
Podcasts
HistoryListsWatch laterLiked videosFollowing

The videos, books, blogs and podcasts Hacker News keeps recommending, all in one place.

VideosBooksBlogsPodcastsAboutPrivacySettings

Data from Hacker News, HackerTube, HackerBooks, HackerBlogs and Open Library. Credits · Not affiliated with Y Combinator.

HomeVideosBooksBlogsPodcasts
Ctrl K
    N

    Nicholas Piël

    nichol.as · Personal blog · on HN since 2009

    Nicholas Piël writes about Python web servers, asynchronous networking, ZeroMQ and some computer vision work.

    Visit blogHN submissions
    Systems & PerformanceWeb DevelopmentNetworking
    What HN says

    HN links his benchmarks of Python web servers and async frameworks as a reference, one commenter calling the asynchronous one famous but dated, plus his ZeroMQ introduction.

    Stats for nerds
    28HN people shared it
    8linked in comments
    336story points
    Jun 2014last shared
    2010people per year2014

    Top posts on HN

    1. 1
      Benchmark of Python Web Servers
      21 people · 190 points · first shared 2010 · 17 comments on HN
    2. 2
      An introduction to ZeroMQ
      4 people · 91 points · first shared 2010 · 24 comments on HN
    3. 3
      Benchmark of Asynchronous Servers in Python
      4 people · 49 points · first shared 2009 · 12 comments on HN
    4. 4
      Person Recognition (with Python)
      1 person · 5 points · first shared 2010 · Discussion on HN
    5. 5
      Person recognition by Pictorial and Contextual Cues
      1 person · 1 points · first shared 2010 · Discussion on HN

    What HN people wrote when they linked it

    • lightcatcherAug 2011

      Its not a high traffic site, but I'm running a app that served average of 5 req/s with Mongrel2 + wsgid + MySQL + django and thats working pretty well.

      Also, the benchmark of Python web servers that gets linked everywhere (http://nichol.as/benchmark-of-python-web-servers) is getting old. I'm planning on doing a new benchmark, probably this coming weekend. As of now, I'm planning to test gunicorn, uWSGI, tornado, bjoern, eventlet, and gevent over HTTP, flup over FCGI, and uWSGI and wsgid over zeroMQ (behind Mongrel2). Thinking of it, I probably need to put all of the HTTP servers behind nginx for a more fair comparison. Am I forgetting any servers that people would like to see benchmarked?

    • pilliqSep 2012

      I vote Gevent because of its speed, small resource footprint, and its simple synchronous-looking API, but be aware of its limitations. The greenlets (threads) spawned by gevent run in a single OS thread, so you won't be able to take full advantage of all the cores on your server with Gevent alone. Also, Greenlets run cooperatively meaning each one gains control of the CPU until it's done with its computation or hits an IO call. This is great for IO bound computation, not so much for CPU bound work. Even with these limitations, I still think it'll work well with in your application.

      Check out this comparison of Python servers:
      http://nichol.as/benchmark-of-python-web-servers

    • rudigerFeb 2011

      Mr. Shaw giving an "extreme talk" on using ZeroMQ, Advanced Network Architectures With ZeroMQ, should be interesting. For those that don't know ZeroMQ and why it's so useful, here's a few links:

      http://nichol.as/zeromq-an-introduction

      http://www.infoq.com/news/2010/09/introduction-zero-mq

      http://www.igvita.com/2010/09/03/zeromq-modern-fast-networking-stack/

      http://mongrel2.org/doc/tip/docs/manual/book.wiki#x1-640005.2 <== The Mongrel2 manual is probably the best concise introduction to ZeroMQ.

    • PewpewarrowsJun 2011

      In reality, not that much. There's a pretty detailed benchmark breakdown here [1]. From my experience, the point where you see the different methods start to diverge is past the point you're going to be able to handle on a single box with a real-world application anyway. I find that gunicorn is slightly easier to setup (not requiring Apache to be installed, etc), so I've stuck with it. To each their own!

      [1] http://nichol.as/benchmark-of-python-web-servers

    • DrJosiahJun 2012

      There are at least 2 better http servers for Python, uWSGI and gEvent. Tornado is known to be slower: http://nichol.as/benchmark-of-python-web-servers . More specifically, uWSGI has been shown to respond at under 25ms with 15k+ concurrent connections.

      Throw uWSGI behind Nginx (with it's new websocket support), tune it a bit, and I wouldn't be surprised to see it "pass" and perhaps even be competitive.

    • espeedNov 2011

      Yes, these are good as well...

      ZeroMQ: Modern & Fast Networking Stack, by Ilya Grigorik
      http://www.igvita.com/2010/09/03/zeromq-modern-fast-networking-stack/

      ZeroMQ an Introduction, by Nicholas Piël
      http://nichol.as/zeromq-an-introduction

      Advanced Network Architectures with ZeroMQ, by Zed Shaw
      http://blip.tv/pycon-us-videos-2009-2010-2011/pycon-2011-advanced-network-architectures-with-zeromq-4896861

    Related

    Peter Bengtssonpeterbe.com38 people

    How much faster is Redis at storing a blob of JSON compared to Postgres?

    Peter Bengtsson
    Personal · last shared 2026
    RISELab Blogrise.cs.berkeley.edu25 people

    Pandas on Ray – Make Pandas faster

    RISELab Blog
    Company · last shared 2025
    Nick Cameronncameron.org65 people

    Rust in 2022

    Nick Cameron
    Personal · last shared 2026
    Cory Benfieldlukasa.co.uk24 people

    Debugging Your Operating System: A Lesson in Memory Allocation

    Cory Benfield
    Personal · last shared 2021
    Hillel Waynehillelwayne.com294 people

    1/0 = 0

    Hillel Wayne
    Personal · last shared 2026
    Dev Geniusmedium.com/dev-genius36 people

    A principled approach to GraphQL query cost analysis

    Dev Genius
    Publication · last shared 2026
    Miguel Grinbergblog.miguelgrinberg.com94 people

    Python 3.14 is here. How fast is it?

    Miguel Grinberg
    Personal · last shared 2026
    PyPy Blogpypy.org183 people

    PyPy has moved to Git, GitHub

    PyPy Blog
    Company · last shared 2026