我正在尝试使用将要在EC2上运行的Thrift创建一个简单的客户机/服务器应用程序。Python Thrift RPC在EC2上不工作
我创建的这个例子对于localhost非常有用,但是当我尝试在ec2上的两台不同机器上进行RPC调用时(两者都分别分配了弹性IP地址),它不会与以下错误一起使用:
raceback (most recent call last):
File "SocialQClient.py", line 25, in <module>
transport.open()
File "/usr/local/lib/python2.6/dist-packages/thrift/transport/TTransport.py", line 150, in open
return self.__trans.open()
File "/usr/local/lib/python2.6/dist-packages/thrift/transport/TSocket.py", line 90, in open
raise TTransportException(type=TTransportException.NOT_OPEN, message=message)
thrift.transport.TTransport.TTransportException: Could not connect to <MY-ELASTIC-IP>:9090
我在两台机器上为我的安全组设置了0.0.0.0/0端口9090。我也试过UDP,它没有修复它。我究竟做错了什么?
更新:
实际上问题是我在本地主机上运行我的服务器,没有0.0.0.0。只要我做了开关,并使用弹性ip调用客户端,服务器正在运行,那么一切都很好! – josephmisiti
啊,我明白了。谢谢你让我知道! –