1

我正在尝试升级使用 Thrift 0.2 库进行通信的系统。由于这是相当旧的版本(最新稳定版是 0.5),并且据称性能有显着改进(在 0.4 中),我希望升级。但是,我找不到有关基础数据格式是否存在不兼容更改的信息。基于版本控制方案,希望没有;但由于这些仍然是 1.0 之前的版本,可能对稳定性的期望较低。

我希望了解数据格式本身向后兼容的原因是它允许对组件进行逐个升级。

无论如何:我希望有更多信息的人可以指出我正确的文档。

4

1 回答 1

2

...我们没有使用 byte[] 作为二进制字段的基础数据类型,而是切换到使用 ByteBuffer。这意味着我们可以避免在反序列化过程中进行不必要的字节数组分配和复制。这种方法比旧方法快了整整 2.5 倍,这还没有考虑到垃圾收集时间的减少。您肯定必须进行一些代码更改才能获得升级,但您仍然应该发现它是值得的。

取自“Thrift 0.4.0 Released”文档。源代码中的相关更改:“Switch binary field implementation from byte[] to ByteBuffer”

于 2011-01-15T14:21:09.400 回答