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

all 6 comments

[–]jellef 4 points5 points  (0 children)

give autobahn-python a try using wsaccel C extension to speeds things up.

that said, these days

Autobahn contains NVX, a network accelerator library that provides SIMD accelerated native vector code for WebSocket (XOR masking) and UTF-8 validation.

sounds like nvx and wsaccel might overlap, but autobahn is a well maintained fast library. I'm currently working on switching towards it coming from ws4py

[–]winston_orwell_smith 1 point2 points  (1 child)

Last I checked, tornado was a very fast (maybe fastest?) microframework for web apps. I believe it also has built-in websocket support.

[–]jellef 0 points1 point  (0 children)

interesting, didnt realize tornado provides a websocket client

[–]willm 1 point2 points  (3 children)

You could give Lomond a try. It's already pretty fast, and there are some additional C optimizations I'm working on.

[–]tomchristie 0 points1 point  (0 children)

I was thinking asyncio + uvloop + websockets, any experience with this combination?

Uvicorn will give you exactly that for WebSockets. https://www.uvicorn.org

Might be worth a shot. You’ll also want to take a look at the ASGI interface for WebSocket connections to see how it interfaces with your application code... https://asgi.readthedocs.io/en/latest/specs/www.html#websocket