DEV Community

Alex Spinov
Alex Spinov

Posted on

Soketi Has a Free WebSocket Server — Self-Hosted Pusher Alternative

A chat app needed real-time messaging. Pusher charges $49/month for 500 concurrent connections. Ably charges $29/month. For a side project, that kills profitability.

Soketi is a free, self-hosted WebSocket server that is fully compatible with the Pusher protocol. Use existing Pusher client libraries, pay nothing.

What Soketi Offers for Free

  • Pusher Compatible - Drop-in replacement, use existing Pusher SDKs
  • Unlimited Connections - No per-connection pricing
  • Channels - Public, private, presence, encrypted channels
  • Horizontal Scaling - Redis adapter for multi-server setups
  • Webhooks - Channel events, member events
  • Metrics - Prometheus-compatible metrics
  • Low Latency - Written in C++ with uWebSockets.js

Quick Start

docker run -p 6001:6001 -p 9601:9601 quay.io/soketi/soketi:latest-16-alpine
Enter fullscreen mode Exit fullscreen mode
// Client - use existing Pusher library
const pusher = new Pusher('app-key', {
  wsHost: 'localhost',
  wsPort: 6001,
  cluster: 'mt1',
  forceTLS: false,
})
const channel = pusher.subscribe('chat')
channel.bind('message', (data) => console.log(data))
Enter fullscreen mode Exit fullscreen mode

GitHub: soketi/soketi - 5K+ stars


Need to monitor and scrape data from multiple web services automatically? I build custom scraping solutions. Check out my web scraping toolkit or email me at spinov001@gmail.com for a tailored solution.

Top comments (0)