This file will be sorted automagically during formatting, so we keep the source in subject order to make sure we cover all bases.
The HTTP server varnishd is caching for. This can be any sort of device that handles HTTP requests, including, but not limited to: a webserver, a CMS, a load-balancer another varnishd, etc.
- backend response
The response specifically served from a backend to varnishd. The backend response may be manipulated in vcl_backend_response.
The bytes that make up the contents of the object, varnishd does not care if they are in HTML, XML, JPEG or even EBCDIC, to varnishd they are just bytes.
The program which sends varnishd an HTTP request, typically a browser, but do not forget to think about spiders, robots script-kiddies and criminals.
An HTTP protocol header, like “Accept-Encoding:”.
An object Varnish delivers from cache.
- master (process)
One of the two processes in the varnishd program. The master process is a manager/nanny process which handles configuration, parameters, compilation of :term:VCL etc. but it does never get near the actual HTTP traffic.
An object Varnish fetches from the backend before it is served to the client. The object may or may not be put in the cache, that depends.
The (possibly) cached version of a backend response. varnishd receives a response from the backend and creates an object, from which it may deliver cached responses to clients. If the object is created as a result of a request which is passed, it will not be stored for caching.
An object Varnish does not try to cache, but simply fetches from the backend and hands to the client.
Varnish just moves the bytes between client and backend, it does not try to understand what they mean.
What the client sends to varnishd and varnishd sends to the backend.
What the backend returns to varnishd and varnishd returns to the client. When the response is stored in varnishd’s cache, we call it an object.
- varnishd (NB: with ‘d’)
This is the actual Varnish cache program. There is only one program, but when you run it, you will get two processes: The “master” and the “worker” (or “child”).
Eye-candy program showing response time histogram in 1980s ASCII-art style.
Program which presents varnish transaction log in native format.
Program which presents varnish transaction log in “NCSA” format.
Program which presents varnish statistics counters.
Program to test varnishd’s behaviour with, simulates backend and client according to test-scripts.
Program which gives real-time “top-X” list view of transaction log.
Varnish Configuration Language, a small specialized language for instructing Varnish how to behave.
- worker (process)
The worker process is started and configured by the master process. This is the process that does all the work you actually want varnish to do. If the worker dies, the master will try start it again, to keep your website alive.