Hi, I would like to know how GRAV works when you upload a folder with already 250images e.g. ? Does the CMS scan the whole folder at each single change/upload resizing all of the images to thumbnails and creating a huge amount of data sent between the server and the panel ?
If the images are used through any of Grav’s image manipulation mechanisms, then yes, each image will be manipulated and cached. If, however, the images are served through regular HTML, then there is no additional server-load.
In the first case, the data is only processed by the server - that is, not sent to the visitor - but it can slow down initial rendering unless it is precached. In the second case, the data has no additional load because the images displayed take up as much bandwidth as they would if they were untouched by Grav.
Note that loading a 100KB image will take as long regardless of whether it is manipulated and cached by Grav as it is served through regular HTML. Unless the size of the image is changed - which is a very handy function of Grav - you are not reducing the bandwidth cost and loading time of the image, as Grav does not enforce protocols.
Thank You Gingah, not sure what you mean about “images served through regular HTML”? Do You mean through a FTP connection instead to arrange the new images in the panel?
No, I mean images served unaltered by Grav or any other system on the server. The only difference in speed (loading time) comes from optimisation in image size or concatenation server-side, or from a different protocol - for example HTTP/1.1 vs HTTP/2.
This is very helpful, thanks a lot for the explanations.
Then, I have to find a web hoster with http 2 and an affordable plan I guess.
(An image resizing process charging by the quantity of images would certainly cost a lot each time I upload new images as it scan the whole folder)
“Most” modern webhosts can support HTTP/2, and finding one should not be a problem. More important will be to set up SSL as this is the easiest route to implement it (see CloudFlare or Let’s Encrypt). Grav does not scan folders for images (unless you write a plugin to do this), all images are processed explicitly, and so you would typically set them through FrontMatter.
If you do end up with a setup that scans the whole folder for images (fairly easy in PHP), then resizing/manipulation should be done beforehand - through Gulp or the like.
sorry I do not figure…“all images are processed explicitly”? …does it mean that the 250 images already saved in a folder still appear as thumbnails (I guess) but only new images or changes are saved at the time they are uploaded?
I have a website made with a flat based CMS, is it possible/easy to import it in Grav?
The thumbnails are cached automatically, both by Grav and the browser, I would not worry about that.
Ease of import depends on which CMS you come from, and how different it is from Grav, but I’m sure that once you get familiar with it, it gets faster than when starting out, as always.
The website is made with KIRBY CMS. How would export be possible?
I’m not much familiar with it, there is no auto export from kirby to grav, but the technology involved is pretty much the same, you just need to move the content, which is markdown in both CMS, and then find a theme that fits or convert your theme to Grav.
Is it correct That Grav doesn’t scan the panel at each single change or upload of new images? …thus a folder with 250 images easily update between the panel and the server?
When you load a page in admin, you can see in the devtools that Grav loads the images thumbnails from its own cache (so they are smaller images) and in addition the browser caches them in memory. Screen Shot 2016-06-29 at 16
thank you for that. Then, I should find someone with experience to import from Kirby to Grav. My webcoder is agree to help with info for that.
Is it right to say that Grav is also installed on my laptop with the content and that I can work on the site offline? Can also acess Grav panel from a windowsphone?