amazon-web-services - Angular 7 客户端的单个微服务(春季启动)的 AWS 选择
问题描述
我对 AWS 比较陌生,希望得到有关满足我需求的最佳选择的建议。我有一个 Spring Boot API,只能由我的 Angular 7 客户端访问。客户端将进入 S3 存储桶。我需要有关如何托管 API 的建议(它需要 MySQL 自动生成的数据库)。
到目前为止,我已经看到了 ECS 与 Elastic Beanstalk 与 Amplify。有经验的人可以向我推荐一个对于这个小项目来说不会过分的选择吗?根据客户端的流量,可以频繁调用 API。
如果您有来自 Azure 或 Google Cloud Platform 的建议,我们也欢迎您。
谢谢!
解决方案
AWS 提供 EC2 服务,您可以在其中创建实例(虚拟机)并手动安装/部署您的应用程序和所有必需的软件。对于个人或非常小的项目,这可能是一个选项,但您应该考虑到您的后端将无法自动(或通过配置)扩展到更多实例,您必须注意数据库的配置和备份,等等
对于生产级应用程序,分离应用程序组件有很多优势,为每个组件使用特定服务。
鉴于您的应用程序堆栈,我建议您考虑这种方法:
- 使用 AWS RDS 创建关系数据库
- 将 Spring 后端部署到 AWS Beanstalk
- 将您的 Angular 前端部署到 AWS S3(它可以用作静态内容)
- 创建具有两个来源的 CloudFront 分配,以路由必须传递到后端(通常使用 /api/ 之类的 URL 约定)和前端 ( )的请求
推荐阅读
- extjs - 如何设置嵌套数据视图
- reactjs - 使用 jest 在反应中测试 rxjs 订阅
- javascript - 覆盖 Google Analytics 中的着陆页跟踪
- ios - 如何在单独的 UIWindow 中呈现另一个 viewController
- javascript - 如何安全地将数据从前端发送到后端?
- html - 如何将样式标签重新定位到其 div 的一角?
- python - 没有轴的空 matplotlib 图未显示在 Jupyter 笔记本中
- javascript - 整个项目如何降级到老版本 React Native
- mysql - 左连接和求和
- c++ - 如何在 Google protobuf 的重复对象类型中高效搜索和删除?