我对 AWS 相对较新,想要获得有关满足我需求的最佳选项的建议。我有一个 Spring 启动 API,只能由我的 angular 7 客户端访问。客户端将进入 S3 存储桶。我需要有关如何托管 API 的建议(它需要一个自动生成的 MySQL 数据库(。
到目前为止,我已经看到了 ECS vs Elastic Beanstalk vs. Amplify。有经验的人可以向我推荐一个对于这个小项目来说不会矫枉过正的选项吗?可以根据客户端的流量频繁调用 API。
如果您有来自Azure或Google Cloud Platform的建议,也欢迎您。
谢谢!
AWS 提供 EC2 服务,您可以在其中创建实例(虚拟机(并手动安装/部署应用程序和所有必需的软件。对于个人或非常小的项目,这可能是一种选择,但您应该考虑到您的后端将无法自动(或通过配置(扩展到更多实例,您必须负责数据库的配置和备份等。
对于生产级应用程序,分离应用程序组件(为每个组件使用特定服务(有很多优点。
鉴于您的应用程序堆栈,我建议考虑这种方法:
- 使用 AWS RDS 创建关系数据库
- 将您的 Spring 后端部署到 AWS Beanstalk
- 将您的 Angular 前端部署到 AWS S3(它可以作为静态内容提供(
- 创建具有两个源的 CloudFront 分配,以将必须传送的请求路由到后端(通常使用/api/等 URL 约定(和前端 ((