Sockudo – Pusher-compatible WebSocket server in Rust
说明与用途
Sockudo 是一个基于 Rust 的轻量级 WebSocket 服务器,兼容 Pusher 协议,帮助组织在不更改前端代码的情况下替换第三方 Pusher 服务。
问题
Organizations using Pusher, Laravel Reverb, or Soketi needed a self-hosted, performance‑efficient WebSocket server that could be used with existing Pusher client libraries without frontend changes.
结果
Sockudo enables organizations to replace third‑party WebSocket services with a self‑hosted, high‑performance server that is fully compatible with existing Pusher client libraries, reducing costs and improving control over infrastructure.
工作流
- 1. Pull the Sockudo image or install via Cargo.
- 2. Run Docker:
docker run -d -p 6001:6001 sockudo/sockudo:latestor start with Cargo. - 3. Configure adapters (Redis, NATS, etc.) and backend storage (MySQL, PostgreSQL, DynamoDB).
- 4. Set up authentication, CORS, and TLS as needed.
- 5. Point Pusher client libraries (e.g., Laravel Echo) to the Sockudo endpoint.
- 6. Monitor via Prometheus metrics and Grafana dashboards.
- 7. Scale horizontally using modular adapters and queue systems for webhooks.
证据
Sockudo speaks the Pusher protocol, so if you’re already using Pusher client libraries (like Laravel Echo), you can point them at Sockudo without changing your frontend code.
It runs with Tokio for async, uses fastwebsockets for the WebSocket implementation, and the whole thing is pretty lean on memory.
Getting started is straightforward: docker run -d -p 6001:6001 sockudo/sockudo:latest
- 记录日期: 2026-09-15T21:00:35.114Z