Nothing is faster than serving resources from the client’s machine. You won’t use any network resources.
The fastest request is the one you don’t make. The directive that tells the browser how long to cache an object is called the Time to Live or TTL.
It is not easy to decide the best TTL for a resource, however there are some heuristics.
Client side caching TTL can be set through the HTTP header “cache control” and the key “max-age” (in seconds), or the “expires” header.
Static content like images, JS, CSS and other files can be versioned. Once the version changes, client makes a request to get the newer version from the server.
v is the version number of the files. Once it changes, client goes to the server and request the changed static file, in our case, css file.
If you are using CDN, the usually embrace client side caching.