五、RPC 框架(Dubbo 等)
POST /api/rpc/balance/u1001 HTTP/1.1 # 34B
Host: localhost:9102 # 20B
User-Agent: curl/8.1.2 # 25B
Accept: */* # 12B
Content-Type: application/json # 32B
Content-Length: 2 # 19B
Connection: keep-alive # 22B
# 空行 2B
{} # body 2B
HTTP 请求,纯头部就有 200~500 字节,BODY 只有 2~200 字节。约 60%~80% 的带宽浪费在和业务无关的文本上。
┌──────────┬───────┬──────────┬─────────┬────────────┬───────────┐
│ 4B total │ 1B cmd│ 8B reqId │4B errLen│ [err bytes]│ [payload] │
│ len │(0x41/42)│(多路复用)│ │(可选) │(业务JSON) │
└──────────┴───────┴──────────┴─────────┴────────────┴───────────┘
◄─────────────── 17 字节 ───────────────►
getBalance 空 body 的请求 = 17B 头 + 40B payload ≈ 57 字节 total,对比 HTTP 最小 200B → 一次调用少写 3~4 倍字节到网卡。
