其实在cobweb
之初就设计了一种编码协议(kproto),用于内部服务消息之间的编码,但因为项目长期需要维护以及开发(两款线上,一款开发中),所以一直未对此库进行维护,
而后期在研发的时候,发现需要与多种语言交互,显然 json
,xml
不是一个很好的选择,而 protobuf
对弱类型语言支持不友好。所以诞生了它 (kproto,kpb )
format | compress rate | encode rate | decode rate |
---|---|---|---|
json std | 0% | 0%( 213.8 ns/op) | 0%(1204ns/op) |
proto v3 | -40% | -51%(98.36 ns/op) | -84%(190.1ns/op) |
kproto | -40% | -76% (65.21 ns/op) | -95%(62.18ns/op) |