Thrift客户端无法连接

时间:2013-07-18 20:36:22

标签: thrift

我有一个thrift服务器和客户端在同一台计算机上运行时工作,但是当我在另一台计算机上运行客户端时(使用服务器计算机的IP),客户端无法连接。两台电脑都是linux。有任何想法吗?


编辑:如果我使用sudo netstat -tulpn | grep [ip]:[port]访问我的服务器计算机并检查某些IP上的活动,我会得到:

172.18.18.106:9090 - >没有

:9090 - > tcp 0 0 0.0.0.0:9090 0.0.0.0:* LISTEN 10642/server

有没有办法将0.0.0.0更改为我的IP?

2 个答案:

答案 0 :(得分:0)

是的,当然。您应该将Thrift服务器与服务器计算机的IP绑定。

另一种解决方案是检查是否有任何防火墙规则阻止端口9090从外部网络访问。您应该从客户端计算机上执行telnet:

telnet 172.18.18.106 9090 

如果可以连接,那就完成了。

答案 1 :(得分:0)

最近,我遇到了与Apache hbase.2.1.2类似的问题。我已经安装了hbase并启动了Thrift服务器。它打开了端口9090和9095。我可以在本地连接它们,但不能远程连接。由于我可以远程远程登录两个端口,因此可以解决防火墙问题。我发现问题出在超时设置中。显然,您创建的默认TSocket的超时时间非常有限,可以在本地设置中使用。但是,对于远程连接,您需要在创建TSocket时增加超时。

TSocket socket = new TSocket(serverHostName, port, 10000)