soketi: your simple, fast, and resilient open-source WebSockets server. 📣 #685
rennokki
started this conversation in
Show and tell
Replies: 1 comment 1 reply
-
Ya the Pusher pricing seems high, $1200 per month for 30,000 concurrent connections and 90 million messages per day, there is probably room for competition for hosted WebSocket services, you could charge half the price and still make good profit. A negative with Pusher protocol is there is no Binary message support, you are losing out on potential 10x message size savings, if I had WebSocket service I would add Binary message option |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi guys.
Many thanks to @alexhultman and the uWebSockets community that built this project, and also made it open source. This project helped me and other developers in so many ways, more than I imagined. I love how blazing fast it is and how well it can get customized.
A few months ago, I pretty much got fed up with Pusher's high pricing, so I decided to build a Pusher-compatible server on top of uWebSockets that I can deploy myself. I have also tried to find already-built alternatives which are also open-source, but I have decided to build my own.
This news exploded in the Laravel community as Pusher is widely used and the same pricing problems were everywhere - people would have given up on managed services for a cheaper or free alternative, even if it meant to them to deploy it themselves.
soketi is the Pusher SDK-compatible WebSocket server that you can deploy anywhere, it's way cheaper than the Pusher/Ably plans, and I tried to make it as easy to use as possible.
Below you will find most of the features that soketi offers. Feel free to fork it or try it and If you have issues or see some bad counter-patterns in the implementations, please feel free to raise an issue. I've tried to get used to and understand most of the uWebSockets.js's concepts and improving a tool is my no. 1 priority to building better software that devs can use.
Blazing fast speed ⚡
The server is built on top of uWebSockets.js - a C application ported to Node.js. uWebSockets.js is demonstrated to perform at levels 8.5x that of Fastify and at least 10x that of Socket.IO. (source)
Cheaper than most competitors 🤑
Compared with Pusher, you can achieve much more for one-third of the price. For a $49 plan on Pusher, you get a limited amount of connections (500) and messages (30M). With soketi, for ~ $15, you get virtually unlimited connections, messages, and some more!
This is because you pay only for your infrastructure. Whether it's your basement server or cloud, it fits and runs. You can also get free $100 on Vultr to try out soketi →
Easy to use 👶
Whether you run your infrastructure in containers or monoliths, soketi got your back. There are multiple ways to install and configure soketi, from single instances for development, to tens of active instances at scale with hundreds or thousands of active users.
Pusher Protocol v7 📡
soketi implements the Pusher Protocol v7. Therefore, any Pusher-maintained or compatible client can connect to it, bringing a plug-and-play experience for existing applications that are already compatible with this protocol.
App-based access 🔐
You and your users can access the API and WebSockets through Pusher-like apps which serve keys and secrets to connect or authenticate requests for broadcasting events or checking channels statuses. soketi also comes built-in with support for DynamoDB and SQL-based servers like Postgres.
Production-ready! 🤖
In addition to being a good companion during local development, soketi comes with the resiliency and speed required for demanding production applications.
Built-in monitoring 📈
soketi just exposes the metrics to you, you just have to scrape them, whether it's a simple HTTP Client to pull the current usage, or you're using Prometheus to monitor all the connections.
Beta Was this translation helpful? Give feedback.
All reactions