对于一个项目,我正在构建一个web应用程序,它使用了我开发的不同的restful组件。现在我有:
所有组件都是RESTful。现在,我正在使用java (Spring)组件(1)托管我的网页和所有前端。我也希望将网页单独托管,并且有一种正确的方式在组件之间进行通信(现在,我只需运行所有这些组件并将请求发送到localhost:xxxx,具体取决于它们在哪个端口上)。
最终,我希望有一个具有类似于下面的结构的可执行文件。请注意,我不希望API可以从解决方案的外部环境中访问。

发布于 2019-02-20 20:09:35
做这件事有很多方法。您可以包含您的api,但取决于您希望如何运行它们。如果考虑云服务,所有云服务都提供了运行容器的不同选项。
有使用Docker的方法吗?
您可以在容器中独立运行这些apis,但是通常您必须使用某种类型的容器编排服务(例如。去检查你的集装箱。
,我可以在哪个地址到达我的代码中的API,一旦我开始工作?
将所有apis (包括web前端)打包到容器中,并部署到kubernetes,这是一组节点。只有您的前端将分配外部ip,而您的其他apis只能通过前端访问,因为它们位于带有私有ip的防火墙后面。kubernetes有自己的网络,集群中的服务(您的api)可以通过服务名访问。
另一种方法是在虚拟网络中部署所有apis,只有前端(使用公共ip)才能访问这些服务。
如何在没有任何后端的情况下单独运行前端,并使其可从外部环境访问?
您可以像上面讨论的那样在kubernetes中以容器的形式运行您的前端,也可以将您的静态前端(只有htm )部署到一些静态主机上,例如aws、s3或azure静态网站。
https://stackoverflow.com/questions/54788563
复制相似问题