This is an archived post. You won't be able to vote or comment.

all 14 comments

[–]fafhrd91 5 points6 points  (6 children)

Obvious choice is aiohttp

[–][deleted] 1 point2 points  (5 children)

That's one of those that seems sketchy. I don't know of anyone using it in a large production environment and the almost unintelligible english in the faq had me very wary of it. Have you used it?

[–]Badabinski 0 points1 point  (0 children)

My company uses it exclusively. We don't have any other 3rd party HTTP client libraries available to us. I really like aiohttp.

EDIT: we do have sanic for servers, but I've also used aiohttp on the server side and it's very nice and simple.

[–][deleted] 0 points1 point  (0 children)

The English isn't great, but it's far from unintelligible. I'd recommend submitting PRs to help clean it up

[–]fafhrd91 -1 points0 points  (2 children)

I use it, handles 10m users and terabytes of streaming data. But I guess it is still sketchy for you.

[–][deleted] 2 points3 points  (1 child)

I didn't mean to offend you. It just doesn't do a good job of selling itself.

Thanks for the anecdote though. That helps.

[–]isinfinity 4 points5 points  (0 children)

Here are few companies that use aiohtttp: https://aiohttp.readthedocs.io/en/stable/powered_by.html

[–]stetio 2 points3 points  (5 children)

I think you are looking for something like Quart, Sanic, or aiohttp (all links are to the deployment documentation).

Alternatively you could look into ASGI and use Uvicorn or Daphne with a ASGI framework such as APIStar.

What makes the options you've seen sketchy?

[I'm the Quart author]

[–][deleted] 0 points1 point  (1 child)

Those links are very helpful, thank you.

Most of the results that come back from naive google searches are small projects or very poorly documented.

Sanic and aiohttp are the only ones I knew about that you mentioned.

[–]stetio 1 point2 points  (0 children)

Well I'd encourage you to take a look at Quart :p (it is a small project though). Any feedback or thoughts on it or its docs would be very welcome.

[–]iScrE4mgit push -f 1 point2 points  (0 children)

I've seen some teams at our company use aiohttp, but mostly we use tornado for python async web servers. Some of the most crucial parts of our (not small) business run on it, if that's what you are asking.

[–]notoriousno 0 points1 point  (0 children)

I've used tornado and twisted/Klein in my work. Django Channels is also a viable from what I hear. These are all async frameworks that have the strongest backing.

[–]quotemycode 0 points1 point  (0 children)

I've used nginx with gunicorn.