Search code examples
imageresizer

ImageResizer, Amazon S3 and caching


I am building a photo sharing site, and using amazon s3 for my storage. Everything is working great, except that the pages render slowly.

When I have over 100 images on the page, and requests that look like mysite/s3/bucket/image.jpg?w=200, does this mean that every image is first downloaded, and then resized? If so, how do I configure caching of thumbnails? I can't seem to find that info in the documentation.


Solution

  • You need the DiskCache (and possibly SourceDiskCache) plugins installed. DiskCache will cache the resized images to disk, while SourceDiskCache will cache the S3 images to disk.

    If you only have a couple versions of the S3 image, output caching is sufficient, but it is definitely needed.

    It's also important to think about the bandwidth requirements between the ImageResizer server and S3. If you're using EC2, make sure you're in the same region as the S3 bucket. If you're using a VM, make sure that you have a big pipe.

    The bottleneck is always I/O.