我有一个GAE项目,我想向外部服务器发出请求。服务器需要将IP地址列入白名单,但GAE使用动态IP地址,列表太长。我一直在寻找两个选择:
1。将GAE项目移至计算引擎
我最担心的是将项目迁移到Compute Engine所需的时间。到目前为止,我们一直在免费使用App Engine,我们希望避免额外的费用。
2。使用我们的域名发出请求
我们可以自己列出IP并将GAE项目的请求接收到我们的域,然后从域的静态主机IP本身向其服务器发出请求。
对于此选项,我还想知道将域名转移到GAE是否有任何优势。 GAE通过转移域的传出请求是否可以通过域的IP进行?
注意:
这在很大程度上基于假设,我对网络非常缺乏经验,所以如果有更好的表达,请告诉我。我试图在网上寻找一种方法来做到这一点,但无法得到满意的答案。
答案 0 :(得分:5)
在这种情况下,您不需要考虑域名,因为您将IP列入白名单,而不是域名。并且没有必要移动整个项目,您只需移动发出此请求的那部分。
只需在具有静态IP的任何服务器上创建代理,例如Google Compute上的微实例,并通过此服务器执行所有请求。
根据我的理解,你对同一个外部服务器做了所有请求,对吧?在这种情况下,它可能更简单。您不需要安装全功能代理,只需在微实例上安装Nginx(当然使用SSL和一些身份验证),它将代理对目标服务器的所有请求。
答案 1 :(得分:0)
我最终使用RabbitMQ将消息从Google App Engine发送到计算引擎,计算引擎然后将这些消息转发为Http请求。
答案 2 :(得分:-1)
您不必创建代理或在代码库中找到解决方案。
检查以下答案是否存在类似问题: https://stackoverflow.com/a/48843403/9313420