【问题标题】:If I have a React frontend and a microservices backend, can I have two deployment targets (S3 for frontend, EKS for backend)?如果我有一个 React 前端和一个微服务后端,我可以有两个部署目标(S3 用于前端,EKS 用于后端)吗?
【发布时间】:2021-03-27 10:15:05
【问题描述】:

构建了静态前端后,我的想法是将其部署到 S3 等静态资产服务器,同时使用 kubernetes 将我的微服务后端部署到 EC2 或 EKS 等计算服务。

但是,我的研究只发现了一种方法:building the frontend as a service 在我的 kubernetes 集群中。

我的问题:

  1. 是否可以像我上面的想法那样有两个部署目标?
  2. 如果可能的话,这样做的优缺点是什么(特别是前端和后端之间的通信会很棘手吗?)
  3. 除了这两种之外,还有其他需要考虑的部署方法吗?

对于其他上下文,我的前端是通过 create-react-app 构建的 React 应用程序,并且我已经通过生产构建提取了。我的后端包含几个 NodeJS 微服务。

【问题讨论】:

  • 这对我来说似乎是一个足够合理的方法;您遇到了具体问题吗?
  • 我还没有尝试部署,但考虑到这种方法对我来说似乎很合理,我很惊讶我找不到任何提到这种方法的资源。我发现的所有资源都描述了在集群中将前端作为服务部署,这让我得出了两个可能的结论:1)我没有搜索正确的关键字,或者 2)首选集群方法中的前端。
  • Webpack 会将前端编译为静态文件,此时您可以让 S3 为您服务,或者运行您自己的纯 HTTP 服务器。如果可以的话,有一些充分的理由将其移植到 S3(包括能够为最近没有重新加载足够多的客户端保留旧版本)。

标签: javascript kubernetes microservices


【解决方案1】:

是否可以像我上面的想法那样有两个部署目标?

是的,有可能。

如果可能的话,这样做的利弊是什么(特别是前端和后端之间的通信会很棘手吗?)

在静态前端的情况下,浏览器(客户端)与后端通信,只要用户能够与后端通信,一切都应该没问题。

除了这两种之外,还有其他部署方法需要考虑吗?

您可以在任何地方部署您的前端,您可以查看其他选项,例如 https://www.netlify.com/https://vercel.com/

这篇文章应该让你对类似架构的Kubernetes有一个更好的了解https://www.freecodecamp.org/news/learn-kubernetes-in-under-3-hours-a-detailed-guide-to-orchestrating-containers-114ff420e882/

【讨论】:

    猜你喜欢
    • 2020-08-09
    • 2021-02-26
    • 1970-01-01
    • 1970-01-01
    • 2020-11-28
    • 2021-02-24
    • 1970-01-01
    • 1970-01-01
    • 2016-07-30
    相关资源
    最近更新 更多