缓存节俭运输

时间:2017-10-01 02:05:10

标签: thrift

我正在为我的Thrift应用程序实现服务发现。服务器将自己的地址自己发布到ZooKeeper中的已知路径,客户端维护此路径的本地缓存,用于将请求动态路由到服务器实例(类似于Curator Service Discovery)。

每个客户端是否还要缓存连接到物理服务器所需的TTransport?这样做可以避免为服务器上的后续请求重新打开TTransport的成本。但是,我担心缓存TTransport意味着我必须保持与群集中每个服务器的开放连接,这可能会降低我的客户端和服务器的性能。

缓存开放TTransport连接是否安全,或者每次发出请求时是否更好地重新协商连接?

编辑:I went ahead and implemented service discovery with TTransport caching,但我仍然不确定这是否是正确的做法。很想知道这是否是正确的方法,或者是否有更好的解决方案。

1 个答案:

答案 0 :(得分:0)

如果您没有打开连接,则缓存TTransport实例是没有意义的。