nov*_*int 5 amazon-s3 amazon-ec2 amazon-web-services aws-lambda static-generator
我想利用 AWS 技术在 AWS 上的 nodeJS 中托管此类可扩展的博客或应用程序。这里的想法是拥有一个小型 EC2 服务器,它不负责为网站提供服务,而只负责运行 CMS/管理面板。虽然这些操作也可以是无服务器的,但我认为拥有一个专用的小型 VM EC2 实例会更高效,并且可以更好地与现有框架等配合使用。
在我上面的图表中,您可以看到有两种类型的用户audiences和admin/writers. 管理员 CRUD 操作也会导致 lambda 运行。Lambda 在 Admin 更改后生成静态站点,并将其交付给 S3。用户被定向到 S3 中托管的静态站点。只有管理员/作者才能访问站点的服务器连接部分。
我认为对于一个可扩展性极强且相对便宜的站点来说,这是一个很好的设计,只要面向用户的一面都是静态的。另一种方法是 CDN,但随后我必须处理缓存失效问题、更新速度较慢的站点以及更大的服务器。
这对我来说似乎是双赢的。回馈?
小智 0
这应该是评论而不是答案,但由于我没有足够的积分......
此架构还有一些其他考虑因素。Lambda 函数非常适合水平扩展微服务,每个小函数都可以并行执行数十或数百次。静态站点的生成通常是单线程操作,因此您可能看不到预期的收益,您还需要观察超时时间(当前最多 300 秒)并确保可以在该时间内生成站点。当然,如果您不运行 Lambda 代码,则不会收取费用。
对于您的管理前端,我建议使用 ElasticBeanstalk,即使您将其固定在单个实例上,它也会为您提供许多出色的功能,例如滚动更新。
祝项目顺利。
| 归档时间: |
|
| 查看次数: |
527 次 |
| 最近记录: |