cirospaciari / socketify.py

Bringing Http/Https and WebSockets High Performance servers for PyPy3 and Python3
https://www.socketify.dev
MIT License
1.45k stars 56 forks source link

Request Update #156

Closed RajaSunrise closed 9 months ago

RajaSunrise commented 10 months ago

If socketify is stable and has good performance and can beat gin and fiber, maybe many will use socketify, and I was very surprised when using socketify it turned out to be very fast and even faster than gin, this is an amazing discovery in my opinion, hopefully socketify will be the top and fastest for python frameworks🐍🐍

shaohaiyang commented 10 months ago

Thank you very much for the author's hard work. This is truly an interesting and powerful project. However, I feel that the author's focus is not here but on "bun" instead, as the speed of issue and bug fixes is not fast enough. It's really a pity.

RajaSunrise commented 10 months ago

I just found out that there is such a fast Python framework, but unfortunately, it is not being developed 😭. Maybe there are many Python developers who would be willing to help fix bugs and update it. This is the framework I have been looking for. I have encountered a problem where Python frameworks are very slow, but customers need something fast like Go and Rust. Maybe Socketify is the answer to my problem.

cirospaciari commented 9 months ago

At this moment I'm migrating from CFFI (Python) to HPy (C Extension that supports PyPy and CPython both with better performance than CFFI).

Bug fixing is a priority since is not production ready yet and I'm rewriting most of it.

I will post a roadmap so we can just see what is being done, and push little by little after the first ASGI and WSGI usable server.

This is some of the things I have being done: Rewriting into C but still based/inspired on uWS and using a custom version of uSockets with a lot of bug fixes and SSL options. H2 parser in C is almost done using lshpack with will add H2 support into server side and client side. Http Client that supports HTTP 1.1, H2 and H3 protocols is in-progress. Unit tests is still pending, but I will prioritize the tests because this year I wanna it to be production ready. Auto run benchmarks so we can see performance impacts on each PR.

Performance should improve on PyPy and CPython (CPython should increase in 50% at least and PyPy 10~20%).