Show HN: BinaryRPC – Lightweight WebSocket-based RPC framework in modern C++
10 months ago
- #RPC
- #C++
- #WebSocket
- BinaryRPC是一个基于uWebSockets构建的高吞吐量RPC框架,专为延迟敏感型应用设计,例如多人在线游戏和金融行情流。
- 该框架支持可配置的可靠性级别(无保障、至少一次、精确一次),提供重试机制、确认应答和两阶段提交协议。
- BinaryRPC采用可插拔架构设计,支持协议层、传输层、中间件和插件的灵活定制。
- 具备自动过期机制和索引字段的有状态会话,支持断线友好型操作。
- 中间件链支持JWT认证、速率限制等功能,其设计理念类似Express.js框架。
- 作为头文件库实现,框架具有轻量级特性,可轻松集成到项目中。
- 依赖环境包括CMake(3.16+)、C++20编译器、vcpkg和Git,JWT/JSON等可选依赖可按需添加。
- 安装流程包含克隆仓库、CMake构建及项目库链接三个步骤。
- 采用模块化架构设计,QoS策略、序列化方案、传输协议、中间件和插件均可替换。
- 框架提供日志记录、错误处理和会话管理等工具,并附有常见使用场景的详细示例代码。