假设我们在端口6000上的本地主机(称为服务器A)上运行服务器。我们有我们自己的客户端与服务器通信(发送消息到服务器A)。服务器A不时发送消息到另一台运行在端口7000上的服务器(比如服务器B),这也在我们的控制之下。我们的客户应该根据服务器B.收到某些消息根据来自Python客户端的事件触发事件并将消息发送到服务器
这是一组的是我想达到
- OurClient发送消息(JOIN)到服务器A
- 例如步骤将消息发送到服务器服务器A发送消息(确认),以SERVERB
- 服务器A发送消息(PATH_CLEAR)到SERVERB
- 服务器B通知(PATH_CLEAR)到OurClient
- OurClient发送消息(MOVE_FOR WARD)到服务器A
- 服务器A发送消息(MOVED_FORWARD_BY_A_CELL)到SERVERB
- 服务器A发送消息(OBSTACLE_AHEAD)到SERVERB
- 服务器B通知(OBSTACLE_AHEAD)到OurClient
- OurClient发送消息(STOP)到服务器A
- 服务器A发送消息(停止)到ServerB ...... ....
我已经使用在Python插座模块连接到服务器并创建OU r客户端和服务器。我应该使用线程来实现这种行为吗?如果是这样,我该怎么做?
我试图这样做 这里是我用于该 How to trigger to responses from a server using python socket programming
的代码,但一旦对方服务器接受我的“#JOIN”消息我不能再发送消息。第一条消息后,我的客户端不会发送消息。我该如何解决?
是否有任何替代方法可以做到这一点,或者是否有任何更改,我应该做我的代码?
可能您应该使用xmlrpc,[RPyC](http://rpyc.sourceforge.net/index.html)或[Pyro](http://pypi.python.org/pypi)这样的高级RPC库/ Pyro4)。否则,您必须向我们显示您的代码... – schlamar
如果您未显示任何代码,则很难理解您做错了什么。通常在套接字上,很可能在同一个套接字上发送多条消息。 – LtWorf
我的代码显示在上述问题的链接中。如果我重申它: http://stackoverflow.com/questions/13501007/how-to-trigger-to-responses-from-a-server-using-python-socket-programming – maheshakya