微服务框架下,绕不开的话题,服务间的通信,常见的有REST,RPC,其中REST,在OSI七层模型中,工作在应用层;RPC基于SOCKET通信,工作在会话层,从性能上看,肯定比REST高。REST通常使用在与外部系统的交互,RPC适合使用在内部系统间的模块调用。
接下来列举了主流的序列化和反序列化常用的中间件以及性能对比:
性能对比结果:
指标 | xml | jackson | hessian | gson | fastjason | kyro | protobuf |
大小(字节数) | 99 | 25 | 51 | 34 | 34 | 38 | 9 |
序列化耗时 | 31940800 | 392513700 | 98097300 | 219340300 | 176490200 | 20486500 | 2822000 |
反序列化耗时 | 75292400 | 32370600 | 15892100 | 12255000 | 3042800 | 23099500 | 63000 |