The following is a non-exhaustive summary list of optimizations on the Front End Optimization (FEO) platform.
All resources that are optimized are renamed with a unique name. If the object changes, a different uniquely named resource will be created. These files have great cacheability, typically set with 365days for time to live (TTL).
Sharding is the practice of serving resources from multiple domains to circumvent browser connection limitations.
- For example www.example.com’s resources are served from 1.example.com and 2.example.com, increasing from six connections to eighteen connections in some browsers.
Cookieless Shard Domains
Cookieless sharding is a practice of serving resources from a domain where cookies will not be sent from the browser when requesting a resource
- For example, www.example.com’s resources might be served from www.exampleimages.com
- The primary benefit of using cookieless domains is to reduce the number of bytes sent and eliminate the time to process the cookies, which are generally not needed for static resources.
- In practice these are often off-domain to eliminate the risk of a wildcard path on third party cookies.
DNS Prefetch references can be injected at the top of the document allowing the browser to do early lookups. DNS Prefetch content is automatically detected by the FEO analyzer.
- Minification - Removing whitespace and comments to reduce file size
- HTML5 - Improving caching
- Adaptive Consolidation - Reducing roundtrips to retrieve all the scripts by consolidating scripts.
- Pre-Execution - Execute scripts server side to improve client side performance
- Resource prefetching - Speed up site navigation by preloading JS/CSS resources for other pages.
In addition to the Minification, HTML5 features, Adaptive Consolidation and CSS optimizations, the platform can
- Asynchronously load the CSS files to improve rendering
- Small image embedding to reduce requests
- Defer print style sheets to render display critical resources first
Front End Optimization can analyze images and provide a number of improvements
- Select the optimal image format (webp, JPEG XR, JP 2000)
- Reduce resolution
- Responsive images - sizing images for the appropriate screensize
- Ondemand images - only loading images when they come into view
The EdgeStart optimization allows Akamai to use a combination of caching the initial static part of a non-cacheable page with streaming the remainder of the response from origin to greatly improve rendering and time to first byte for non-cacheable pages.