我们正尝试通过Amazon AWS Elastic Beanstalk(AEB)组件创建多个API的设置.我们之所以选择AEB是因为它为我们部署的应用程序提供了无缝部署和扩展,而无需手动创建负载均衡器(LB)和扩展规则.我们非常希望保持这种方式,因为我们计划推出(大量)应用程序和API.
然而,我们面临着AEB的一些挑战.
首先,一些API需要内部通信,低延迟是我们的核心要求.为了在AEB中利用内部网络通信,我们被"强迫":
在亚马逊分配VPC
将每个应用程序部署到此VPC - 每个应用程序都在其自己的内部LB之后
现在,当使用Elastic beanstalk URL时,API能够解析另一个API的LB的内部IP,从而消除了延迟并且一切都很好--API可以相互通信.
然而,这给我们带来了另一个问题:这些"内部"分配的API中的一些(记住,它们位于VPC中的内部LB后面)也必须可以从互联网访问.
我们仍然没有找到一种方法来使内部LBs可以访问互联网(同时保持其作为内部LB的能力),因此非常感谢任何有关此问题的帮助.