Thrift php lib性能问题

时间:2017-02-23 15:49:19

标签: php rpc thrift

我最近使用php thrift客户端来调用java thrift服务器实现的一些服务。

但是我发现当我传输大量复杂数据时,由于成千上万的{{​​1}}或TBinaryProtocol::readXXX(),php花费了大量时间对数据进行序列化和反序列化  调用

优化这个有什么好主意吗?

1 个答案:

答案 0 :(得分:1)

TBufferedTransportTFramedTransport可能有所帮助。前者仅在其间具有缓冲器以减少I / O调用,而后者还通过修改线数据来改变传输堆栈(即,在开始时插入保持数据块的总长度的Int32)。

因此,TBufferedTransport是纯粹的本地事物,相比之下TFramedTransport必须在客户端和服务器上使用。除此之外,两者的工作非常相似。

此外,某些可用的服务器类型需要TFramedTransport,因此对于任何新API,从一开始就添加TFramedTransport可能是一个不错的选择。