【问题标题】:For which purposes used seqid in Apache Thrift?在 Apache Thrift 中使用 seqid 的目的是什么?
【发布时间】:2015-03-04 15:57:01
【问题描述】:

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

【问题讨论】:

  • AFAIK 目前不用于任何用途。但是,除了显而易见的事情之外,我不能说太多关于它背后的初衷。 (PS:恭喜你问了第一个问题 [thrift-protocol] 标签似乎真的合适。)

标签: c++ thrift thrift-protocol


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2018-08-10
    • 2015-07-28
    • 1970-01-01
    • 2014-01-06
    • 2016-12-08
    • 2013-02-23
    • 2013-05-04
    • 2016-11-29
    • 2011-06-05
    相关资源
    最近更新 更多