Varnish 可以缓存 S3 对象吗?

StC*_*Cee 0 varnish amazon-s3

只是一个简单的问题:Varnish 可以缓存 S3 对象吗?或者它只适用于服务器上的静态文件?

cyb*_*x86 6

Varnish 将缓存通过它提供的文件(前提是它已设置为这样做)。

典型的设置将有一个后端服务器提供内容,并将 Varnish 设置为服务器前面的缓存层。通过这种方式,Varnish 可以配置为缓存静态和动态内容。

在 S3 的情况下,它会有所不同。如果您直接从 S3 提供您的内容(即您的资源的 URL 指向 S3),则不涉及 Varnish 并且不会缓存内容。

另一方面,如果您的服务器在本地访问 S3 文件(例如您的应用程序读取文件或您使用诸如 s3fs 之类的东西在本地挂载 S3 存储桶)并从中提供文件,则可以使用 Varnish 来缓存文件.

不过,可以说,目的问题浮现在脑海中。从 S3 提供服务应该比尝试使用 Varnish 实现自己的缓存更具可扩展性。一个优点可能是节省了 DNS 查找(因此可能适用于少量小项目)。(更好的缓存替代方案可能是 Cloudfront,但对于少数/小文件,S3 通常表现更好)。