首页 > 解决方案 > 将 easy_thumbnails 与 Amazon S3 结合使用时,如何修复执行 4 个额外查询的页面?

问题描述

我正在设置 Amazon S3 以用作我的媒体服务器来提供图像文件。我使用easy_thumbnails来缩略图图像。easy_thumbnails 在将它们发送到 S3 之前进行裁剪,因此存储 4 张图像,每张图像的大小都不同。如果没有 Amazon S3,页面会执行 2 次查询来加载页面。使用 Amazon S3,它对同一页面使用 6 个查询。查询显示查询原始文件以及裁剪文件。我相信这不应该是必要的。如何减少使用 S3 的请求数量?

此图显示了使用Amazon S3 的查询 此图显示了没有Amazon S3的查询此图显示了使用 Amazon S3 的查询 此图像正常显示查询

**edit 我注意到 easy_thumbnails 没有根据django 包针对远程存储进行优化。因此,优化的 easy_thumbnails 的替代方案也会对我有所帮助!

标签: djangoamazon-s3thumbnailseasy-thumbnails

解决方案


看起来easy_thumbnails 每次加载页面时都请求相同的图像文件(缓存可能对easy_thumbnails 不起作用)。当我读到 easy_thumbnails 没有针对远程存储进行优化时,我寻找替代方案并尝试了 sorl-thumbnail。这似乎可以完成工作!它不会在每个页面加载时发送请求,因此查询量减少了很多!


推荐阅读