我可以用 Java 连接一个 HsHaServer 和 Async 客户端,并让它顺利运行。问题是似乎没有真正异步服务的异步接口(interface)。服务接口(interface)是这样的
public TSomeReposonse doStuff(TSomeParams 参数);
这要求我在 doStuff 内部阻塞,直到我准备好返回 TSomeResponse
有一个Async.Iface
public void doStuff(TSomeParams params, AsyncMethodCallback[AsyncClient.doStuff_call]);
但看起来这只适用于客户端。似乎没有办法将值传递给回调。我是对的吗?如果我想要真正的服务器端异步,我是否需要使用类似 netty 的东西来实现我自己的客户端/服务器?
谢谢, 安德鲁
最佳答案
这个问题很老(可能有一个徽章),但以防万一这与某人相关,答案是肯定的。它被称为异步处理 - 请参见此处: https://issues.apache.org/jira/browse/THRIFT-1972
它使用与异步客户端相同的接口(interface)。
不过,关于这方面的文档几乎是荒谬的缺乏。
关于java - Thrift 是否有针对 Java 的异步服务器端方法定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13256935/