我需要设计一个包含多个 spa 页面的网站解决方案。我认为作为高级设计的内容如下:-
每个 spa 页面将有一台机器,它将仅呈现 UI、执行 SSR 并从浏览器获取请求。例如,www.abc.com/foo 将被路由到这台机器。我正在考虑将应用程序 UI 代码放在 kubernetes pod 中并将其托管在机器/节点上。同样使用 KOPS,我将管理节点和 Pod 的自动缩放。
现在,pod 中的这个应用程序将调用其他 pod 以在网页上显示数据。例如,将从 pod1 调用 www.abc.com/API/foo。我正在考虑制作另一个 pod,它将与网页 pod 节点位于同一节点上。
所以现在我有 2 个 Pod 位于一个节点上,它们将根据流量自动缩放。同样,对于我网站上的每个页面,我都会有一个节点,每个节点有 2 个 pod。
我现在的问题如下: -
- 以上是否有任何最佳实践或其他设计解决方案?
- 我将如何实现基于路径的路由,例如 www.abc.com/foo 应该调用我的网页 pod?
- 如何在不使用负载均衡器的情况下将 pod 暴露给外部世界,即互联网?
- 我应该为每个 pod 设置不同的存储库吗?