thrift的安装以及与http网络性能对比(MAC环境)

因为公司业务的原因,要加速一下rpc,准备使用thrift,所以做个初步的性能比较,之前对这块也不太了解,如果有不对的地方希望老铁们指正~
因为都是走的TCP,所以性能的差异主要就是数据包的大小对比了。
比较的是thrift和flask,语言都是用的python。thrift测试了json和binary两种格式,flask使用的是json格式。
以上是背景。

MAC上thrift的安装就一句话,brew install thrift,(插一句,thrift官方的安装教程一个都用不了)
然后用什么语言就再装什么语言的支持包就行了,用的是python,就一句:easy_install thrift

安装完之后写个demo,用wireshark抓一下包就可以了。
传输的数据:
thrift的安装以及与http网络性能对比(MAC环境)

thrift/json:
thrift的安装以及与http网络性能对比(MAC环境)

thrift/binary:
thrift的安装以及与http网络性能对比(MAC环境)

可以看到thrift的request包都非常小42/35Bytes,response包json格式是204Bytes,binary格式是203Bytes,可能是由于数据比较小,两个格式的数据包相差不大

flask/json:
thrift的安装以及与http网络性能对比(MAC环境)
可以看到flask的response包是325Bytes,比thrift大了50%以上。
而request包居然是517Bytes,和thrift的42/53Bytes差距还是非常明显的。