For a recent project, we had to create a brand new homepage, fully manageable by our customer using our WebCms functionality. This page would have to be served in three flavors: one for subscribers, one for users that have registered but lack a subscription, and one for anonymous users. Because this page would be the first thing a user sees when they surf to the website, speed is of the utmost importance. When thinking about speed, the first thing that comes to mind after optimizing the code, obviously is to cache a lot of data: when you cache all the data you need on the backend, the load time of the page will improve. But what if we want to improve the load time even more?
|Published (Last):||5 September 2018|
|PDF File Size:||17.93 Mb|
|ePub File Size:||18.35 Mb|
|Price:||Free* [*Free Regsitration Required]|
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together. If nothing happens, download GitHub Desktop and try again. Go back. If nothing happens, download Xcode and try again. If nothing happens, download the GitHub extension for Visual Studio and try again. The container OS is Ubuntu Configuration is set via command-line arguments passed via the docker run command. In order to access the ETS server, port 80 on the container must be exposed to the host.
The host port which is bound to port 80 on the container is referred to as the ETS port. Settings for the sandbox origin can be set using the hostname localhost. For brevity and convenience, each argument has both a long and a short flag.
The following command will result in an error:. Using docker run 's -d argument and removing -t or -i , you can run the ETS container in the background, e. To stop the container, use docker ps to obtain the container ID and docker stop or docker kill to make it exit. We suggest explicit port publishing and mapping due to its compatibility and simplicity. See this article for more information on Docker networking options. Add them with port , e. In some cases you may want to specify a server running in another container as an origin.
There are many ways to network containers. If you want to enable ESI debugging, pass the --debug localhost argument. If you'd like to still be able to access default ETS server content main page and ESI examples , mount your local folder as a subfolder:.
If the sandbox or playground interfere with your code, i. For example:. This software should only be used in restricted environments for testing and development.
For security on public or untrusted networks, ensure that your Docker network configuration does not expose ports except to the local machine. To report a bug, please create a GitHub issue or email esi-test-server akamai.
To report a security vulnerability, please email security akamai. GPG key. The Dockerfile and associated code samples and scripts are licensed under the Apache License 2.
Skip to content. Dismiss Join GitHub today GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together. Sign up. HTML Branch: master.
Find file. Sign in Sign up. Launching Xcode If nothing happens, download Xcode and try again. Latest commit Fetching latest commit…. Sandbox origin or sandbox - an Apache server running within the container that hosts ESI examples by default, but can also be used to mount a local directory of ESI files for quick and easy testing. Remote origin - an upstream server for ETS to forward requests to.
Playground - real-time, test-as-you-type ESI testing tool. Edgescape - geographical information about end users. The --geo flag can be used to enable or disable this for a given host it's enabled by default. ESI Debugging is disabled by default. Edgescape is enabled with the defaults documented above.
To get a processed ESI page from yoursite. Short flags For brevity and convenience, each argument has both a long and a short flag. Advanced usage Daemonizing to run in background Using docker run 's -d argument and removing -t or -i , you can run the ETS container in the background, e. Networking We suggest explicit port publishing and mapping due to its compatibility and simplicity.
Container as origin In some cases you may want to specify a server running in another container as an origin. Security This software should only be used in restricted environments for testing and development. You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window.
Edge Side Includes
The purpose of ESI is to tackle the problem of web infrastructure scaling. It is fairly common for websites to have generated content. It could be because of changing content like catalogs or forums, or because of personalization. This creates a problem for caching systems. The proposal editor was Mark Nottingham. ESI Language Specification 1.