1.7 KiB
1.7 KiB
协议参考
BaraDB 支持多种客户端通信协议:
- Binary Wire Protocol — 高性能、低延迟
- HTTP/REST API — 语言无关、易于调试
- WebSocket — 流式传输和发布/订阅
Binary Wire Protocol
所有多字节值使用大端编码。
连接生命周期
Client Server
| |
|─── TCP connect ──────────────>|
|─── Auth message ──────────────>|
|<── Auth_OK / Error ───────────|
|─── Query message ────────────>|
|<── Data / Complete / Error ───|
消息格式
┌─────────────┬─────────────┬─────────────┬─────────────────────┐
│ Length │ Type │ Sequence │ Payload │
│ (4 bytes) │ (1 byte) │ (1 byte) │ (Length - 6 bytes) │
└─────────────┴─────────────┴─────────────┴─────────────────────┘
消息类型
| 类型 | ID | 描述 |
|---|---|---|
| Query | 0x01 | 执行查询 |
| Insert | 0x02 | 插入数据 |
| Update | 0x03 | 更新数据 |
| Delete | 0x04 | 删除数据 |
| Ready | 0x05 | 准备就绪 |
| Error | 0x06 | 错误响应 |
HTTP/REST API
Base URL: http://localhost:9470/api/v1
端点
Health
GET /health
Query
POST /query
{
"query": "SELECT * FROM users"
}
WebSocket Protocol
URL: ws://localhost:9471