0

我正在研究如何使用 Apache Thrift 库,发现任何发送/接收操作都使用 seqid 变量。但它总是设置为零,我没有找到任何改变或使用它的地方。它很奇怪。是否每个人都知道这个变量在 Thrift 中存在的目的是什么?

4

1 回答 1

3

seqid 在某些地方使用。例如,Node.js JavaScript 实现使用序列 ID 将调用响应映射回客户端回调。因此,实现保留对 seqid 执行所需操作的权利,因此用户级代码应将它们视为不透明的。服务器必须返回与调用响应一起收到的 seqid。因此,Apache Thrift 客户端实现决定如何以及是否使用 seqid,并且服务器简单地将它们原封不动地返回。例如,Python 客户端可能会在每次调用时发送 seqid 0,而 JavaScript 客户端可能会使用自动增量,服务器的工作是将接收到的任何 seqid 返回给调用者。

于 2015-03-05T00:02:51.157 回答