再会,
我一直在为我的基于云的硬件项目系统使用 AWS。使用 SimpleDB 和提供的通知服务非常棒。
但是,我需要 AWS 上的后端,它基本上可以监听进来的请求,处理它并将其发送回特定地址。某种UDP服务。
我可以轻松地为它编写 ac#/c++ 应用程序,但我不确定我是否可以在 AWS 上托管它。有谁知道这是如何工作的?
再会,
我一直在为我的基于云的硬件项目系统使用 AWS。使用 SimpleDB 和提供的通知服务非常棒。
但是,我需要 AWS 上的后端,它基本上可以监听进来的请求,处理它并将其发送回特定地址。某种UDP服务。
我可以轻松地为它编写 ac#/c++ 应用程序,但我不确定我是否可以在 AWS 上托管它。有谁知道这是如何工作的?
简短的回答:是的。
EC2 实例就像任何其他虚拟机一样,显然您可以放入一个侦听 UDP 的服务器。当然,为此配置网络稍微复杂一些,但可能。让它变得更加复杂的一件事是,使用 UDP,您将无法享受 Amazon 提供的负载均衡器服务,因为它(当前)仅支持基于 TCP 的协议。
因此,如果您希望将一台服务器放到 Internet 上,该过程可能与您对 TCP 服务器所做的相同:设置一个服务器和一个指向它的弹性 IP,然后让您的客户端连接到它(通过了解您已分配的弹性 IP,或通过 DNS 解析引用该 IP)。如果您要设置多台服务器,并回答相同的地址,那么生活会有点复杂。使用 TCP,您可以设置 Amazon 负载均衡器并将弹性 IP 分配给负载均衡器。如果您想要一个用于 UDP 的负载均衡器,Amazon 库存负载均衡器无法做到这一点,但您仍然可以找到一个软件负载均衡器(Amazon 的公共图像库中有数百个)来设置。
Nginix 有一个 Amazon 映像,可以以 2,500 美元/年的价格对 UDP 进行负载平衡,或者您可以启动自己的EC2 实例并使用开源 Nginx。
我的具体用例是 UDP 日志记录服务,如果您可以使用主机名,Route 53也可以是一个可扩展的托管解决方案。