h2non / imaginary

Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing

Home Page:https://fly.io/docs/app-guides/run-a-global-image-service/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Feature Request] Cache transformed file

approached opened this issue · comments

I have a large image 6MB. If i'am using the crop function it take 400ms. It is fast but i use this image as thumbnail for a website, that it is too long.

It would be nice if can cache this file in directory.

Follow directory structure is recommended:

curl -O "http://localhost:8088/crop?width=500&height=400&file=foo/bar/image.jpg"

Directory for faster delivery next time:

foo/bar/crop?width=500&height=400/image.jpg
commented

Imaginary is not intended nor designed to be used as a cache layer.
Instead, it is up to the consumer to use a cache layer, such as any Cloud CDN, on top of the imaginary server(s).

If you have a single image or a reduced set of images, then you may simply compress them once ahead of serving time and minimize significantly the impact of the image download time, or using a set of pre-transformed images already stored in your server.

I have many images and i want just in one country to distribute my images. A Cloud CDN is nightmare.

Which webserver => proxy can i use for selfhosting? To caching the response?