我是AWS的新手,想在深入研究之前对此发表意见。
我有一个基于asp.net和SQL数据库的小型企业。我想把它移到AWS。我仍在努力熟悉AWS,并一直在阅读它。
我应该:1) 在RDS上托管我的数据库2) 在S3上托管网站(asp.net)文件3) 在EC2实例上运行应用程序
这很标准吗??我知道如何做1和2,但不知道如何链接#3。如果这是我应该走的路。
谢谢!
这在很大程度上取决于您的具体情况,但以下是我的一些想法:
1-在RDS上托管sql数据库是可以的,直接在ec2实例上托管数据库也同样可以,甚至可以使用免费版本的sql server(sql express)。对于低到中低流量的站点。对于这样一个网站来说,它会很好地工作,这是一个不错的开始方式。如果你不想自己管理数据库,并且你可以接受额外的成本,那么使用RDS(可能在技术上是一个更好的解决方案)没有错;您还可以选择在您的ec2实例上从本地SQL Sever数据库开始,只有当您需要或想要升级时才进行升级。
2你不能在S3上托管你的基于asp.net的网站,S3可以托管一个静态网站,但asp.net不是一个选项;asp.net需要一个后端服务器来为其提供服务,因此S3并不合适。然而,您可以为提供S3中的一些资产,即图像、css文件和JavaScript文件;你也可以使用他们的CDN Cloudfront在世界各地推广这些资产——这将是对asp.net网站S3的适当和良好的使用。
3如果你正在使用asp.net,如果你计划使用aws,你几乎必须在ec2实例上运行你的网站。。。别无选择;他们不提供共享托管计划(aladiscountasp.net)。
似乎最方便的托管应用程序方法是使用AWS Elastic Beanstalk。它让事情对你来说很容易,并且支持.NET
Elastic Beanstalk可以轻松设置RDS、EC2、负载均衡器(ELB)、标记静态文件以实现快速服务等。代码部署和版本管理也非常简单。
此处提供更多详细信息:在.NET 中创建和部署AWS弹性Beanstalk应用程序
此外,如果您需要进一步的页面加载速度,您可以在AWS S3和AWS Cloudfront上托管静态文件。您可以使用此路由来保留静态文件(图像、JS、CSS等)。点击此处阅读更多:在AmazonS3上托管静态网站。
我最近写了一篇博客文章来解释一下这种方法。AWS 上的简易网络应用程序