我正在开发一个我的项目,我期待每月约有500-750k的独特ping。
我很想知道是否有更好的方式(在延迟方面)来托管静态网站而不是我的想法。
点子:
我正在主持:
另外,如果我上面的想法没问题,你会选择哪个EC2实例?我认为微型实例会做得很好,我不明白为什么我需要额外的RAM / CPU。
编辑:或者像S3 / CloudFront这样简单的东西怎么样?
答案 0 :(得分:3)
针对您的案例,具有成本效益,高可用性,完全托管,安全且容错的解决方案 AWS S3 :
创建S3 Bucket(mybucket)并在其上启用网站静态属性。
在该存储桶上创建具有读/写权限的IAM用户。
"Version": "2012-10-17",
"Statement": [
{
"Action": "s3:ListAllMyBuckets",
"Effect": "Allow",
"Resource": "arn:aws:s3:::*"
},
{
"Sid": "Stmt1487841624000",
"Effect": "Allow",
"Action": ["s3:*"],
"Resource": ["arn:aws:s3:::mybucket/*", "arn:aws:s3:::mybucket"]
}
]
}
(保留密钥和访问密钥以及创建存储桶的区域)
在笔记本电脑中配置密钥和访问密钥
aws configure;
然后上传您的静态网站:
aws s3 sync /path/to/local/dir s3://mybucket;
恭喜!您的网站托管:http://[BUCKETNAME].s3-website.[REGIONMAME].amazonaws.com
如果你想:
将网站映射到另一个域
或/并使用SSL
或/并与WAF集成。
或/等等......
还可以使用 AWS CloudFront 。
答案 1 :(得分:1)
我可以迟到派对并建议S3。以下是一些实际绩效指标
这是显示具有相当高负载的S3延迟的图表
正如您所看到的,每小时第一个字节的平均时间范围为30到60毫秒
我们还发现流量总量不会影响延迟,实际上平均延迟和总请求数之间似乎存在反比关系。我认为这是由于自动调节"引擎盖下#34;在AWS端
根据AWS文档,静态网站设置的S3部分适用于每秒800 GET请求,请参阅http://docs.aws.amazon.com/AmazonS3/latest/dev/request-rate-perf-considerations.html
抱歉,我没有与此相比较的ngnix统计信息。我们不会将ngnix用于此类工作负载