你好,Serverfault 的成员。
我想在 EC2 上实现以下设置:负载均衡器启动和停止仅提供静态内容的实例。(基于 javascript 的应用程序)如果我发布新版本,我不想手动更新当前正在运行的实例上的应用程序代码。所以我考虑将代码上传到 cdn 并在 Web 服务器实例上安装带有本地缓存的驱动器(类似 dropbox)。这样,任何正在运行的实例都会自动拥有最新版本和本地内容的速度优势。
对此最好的解决办法是什么?
我曾尝试使用 s3 和 s3fs / s3fs-c,但由于其当前实现中存在错误,它们对我来说无法使用。从理论上讲,s3fs 的临时缓存是我想要实现的吗?
答案1
如果它只是一个静态站点,您可以直接从 S3 提供内容,或者如果您想要 CDN 的优势,则可以通过 CloudFront 提供内容。
CloudFront 的设置非常简单,完全不需要负载均衡器。您还可以获得额外的优势,即内容由最靠近客户端的边缘服务器提供。
您需要做的就是:
- 在 AWS 控制台中设置 CloudFront 分发。
- 将 CloudFront“原点”指向您的服务器或 S3 存储桶的 DNS 别名。
- 将您的站点 DNS 指向 CloudFront 端点。
Cloudfront 首先会从您的网站提取页面,然后从其缓存中提供这些页面,直至它们过期。