Bulletproof IT wrote:Hi Karl!
How are you doing? Any plans for Christmas and New Year?
X4 perhaps? hahahah
Gonna put on a little more weight at least ...
Bulletproof IT wrote:A visitor must visit a page and request the resources (JS, CSS, JPG, PNG....) for them to be generated and cached with their permissions (guest, member, admin, custom level) as well as custom elements only visible when that combination of access is granted.
So given that Full-Sized photos/images are viewed at up to 1920x1080 (minus the browser toolbar and scroll bars, and so on. If I upload all 2MP images, 10 of them. Then only when Visitor 1 visits the website will all the files be cached... right?
Yes, a single visitor will make sure the images get cached on server, thus serving the same files to next visitor faster. However, images may need to be be created in multiple sizes depending on the visitors screen ... For example, I am on macbook retina, thus images are generally requested at approximately double size. Essentially it could require a few different visits from a handful of different devices to make sure all image sizes have been created- and cached for a specific page. Basically it will create on-demand, so the most requested sizes are likely to be created quickly, and perhaps some images are created later in time once the same page is visited from an obscure non-retina older iphone device.
Bulletproof IT wrote:#Q: If Visitor 2 accesses the home page, but logs in and goes around the pages, does ANY of the cached content get displayed to Visitor 2 that Visitor 1 accessed and previewed?? When Visitor 3 turns up who is on a mobile device, an is a guest, what resources must be generated for them?
The frontend output is the same, regardless if the visitor is logged in to the panel or not. Also, X3 is "responsive", meaning it does not create different output templates- and pages per device. Once all your pages are visited, all pages/templates are nicely cached, regardless of what device used or if the user is logged in to the backend or not. It works slightly different in regards to images, because images are served by javascript based on a calculated size that fits the device screen/pixelratio ... If visitor A views a page from a macbook 13", then visitor B on a windows 13" will likely be served the cached files. However, new images may need to be cached for first visitor to that page from an iphone retina device, while consecutive visitors on a device with a similar size/pixelratio will thereafter be served the cached images ... Ultimately, once your page gets traversed by a multitude of devices, your images will get cached in all combinations of sizes. Keep in mind, this also depends on the gallery layout you have selected, and how the images "respond" on smaller screens ... In many cases, a mobile device could easily request the same image as a large desktop, because column layouts respond. This should be an "invisible" process, where eventually everything including all image combinations are nicely cached, so that your website operates at maximum speed with minimal processing overhead.
Bulletproof IT wrote:I would have thought that we first create three of each that meet this criteria (Phone, Tablet, Desktop for 1, 2 and 3 = 9 resize of each, instead of unlimited number).)::
1. Full Size (either original or resized to max X or Y axis (e.g. Max Preview Image Width: 1200px, Max Preview Image Height: 900p.)
Will this then show that image to ALL visitors??
Sorry but it does not work like this. An image is not necessarily smaller on a phone, sometimes it is bigger. For example you have a columns layout that wraps to a single-column on mobile devices like iphone 6 ... An iphone 6 is 750px wide, so will request the image approximately at that width. A non-retina 1600px desktop showing 5 columns, might request the images at 320px or less. Also, this depends on your gallery layout, as in many cases a lot of images sizes are not required, so it is best handled on-demand.
Btw, it does NOT create an unlimited number of sizes. It creates from within this array if widths: 100,200,320,480,640,800,1024,1280. In most scenarios, your images will likely just be created at 3-4 of these sizes (depending on layout). You need more than 3 sizes of images btw ... Just consider the slideshow thumbnails, which are 100px (and require 200px in retina mode). It does not hurt your server to have a range of smaller images to serve the request, which will benefit both the quality and bandwidth of the visitor.
Bulletproof IT wrote:2. Other Size (used for thumbnails on)
Similar to #3 below. Resized to 150px. Then displayd at % of this size to fit visitors screen. If they are using graphics that are resized down 1% - 30% then this will prevent having generate more triplicate/quadruplicate/quintuplet/.... copies of the same thumbnails or preview or full size images and photos.
I am not quite sure why would predefine this ... thumbnails can be 100x100 or 200x200 or 100xaspect or 200xaspect, depending on what settings you have applied for your specific layout. In a columns layout on a large retina macbook, a "thumbnail" might even be 480x480. Why not just let X3 deal with it automagically? It is quite smart and intricate. 150px serves no specific purpose unless your layout for any given screen happens to find that to be a lucky number, which in most cases is not possible across all devices and pixel-ratios ... Iphone 6+ has a 3X pixelratio btw ...
Bulletproof IT wrote:3. Multi-Device Size (Displayed anywhere between 40% and 120%)
Allows all mobile devices to access one remotly located resource, so the browser can cache it locally too. e.g. If in Desktop Mode or Mobile Mode (Meta Client) etc.
The benefit is that these images are dynamically resized, and then all Thumbnails are resized dynamicly from 90% width/height to 50% width/height, should the user zoom etc.
I would re-iterate, X3 does NOT create a 100% exact size only for this specific device and layout. It will lookup an array and find the best match, and this size will likely be used in several scenarios across multiple devices. We cannot serve the same image sizes for all mobiles. The browser will STILL cache it locally, and I am not sure what makes you think it will not do that.
Bulletproof IT wrote:Make sense?
This means you don't have to have a preview image AND thumbnail AND xxxx resized image for very single screen resolution (or dimensions should say) and all the other factors.
We don't have have images cached for every single screen resolution, but we have have a selection resized items set to best serve the device and layout that makes the request. A full-size image on an iphone 3 might be the same image served as a thumbnail on a macbook retina for instance. We got this covered!