【问题标题】:What options are there to allow one server to send information to another server?有哪些选项可以让一台服务器向另一台服务器发送信息?
【发布时间】:2013-12-01 15:55:44
【问题描述】:
我有两个网络主机。一个具有标准共享托管服务提供商,另一个:AWS 免费套餐。我希望这两个服务器能够相互通信。基本上,我希望共享服务器向 AWS 服务器发送一些信息,从而导致 AWS 服务器运行某些脚本。
我熟悉 python,所以想知道是否有一些 python 库可以用来快速编写一个脚本来侦听某个端口(在 AWS 上)。此外,安全性也存在问题:我希望 AWS 只监听来自某个 IP 的请求。这可能吗?我可以使用哪些 python 库来做这样的事情?
我对网络编程相当陌生,无法通过谷歌搜索解决方案。谢谢!
【问题讨论】:
标签:
python
web
amazon-web-services
server-communication
【解决方案1】:
由于您已经在使用 aws,因此您可以考虑使用 AWS SQS 在两台主机之间添加一个队列并通过它而不是直接进行通信。
使用 SQS,当需要在另一台主机上运行某些东西时,编写脚本将消息添加到 SQS 队列会很容易,第二台主机轮询队列以查找消息同样容易。
在两台主机之间添加一个队列可以将它们解耦,并增加一点容错能力(即,其中一台主机可能会离线一段时间而不会丢失消息),并且可能使您能够扩展,如果您需要更轻松一些(例如,如果您曾经需要多个实例来处理来自另一台主机的作业,您可以添加它们并告诉它们也轮询同一个队列,而不是构建一个 1-1 'always on' 两者之间的依赖关系。
给这只猫剥皮有很多不同的方法,所以在你的情况下,上面的方法可能有点矫枉过正,但我想我会把它扔在那里作为考虑的事情。