Paper to think about...

Dridi Boukelmoune dridi at
Wed Jun 15 09:48:16 CEST 2016

On Wed, Jun 15, 2016 at 1:29 AM, Kacper Wysocki <kacperw at> wrote:
> Only a handful params actually need changing from site to site.
> There are a dusin params that I've neer seen anyone use to any good
> effect.. in particular, most of the ones labeled "NB: We do not know
> yet if it is a good idea to change this" are voodoo for users.

In this case the varnish-cli could be changed so that experimental params
don't show up by default with ` -l`, requiring a new flag like -x for

That would be one more knob, but to hide less common knobs. Experimental
flags could be moved to the varnish-cli(7) manual too, in my experience most
people don't read it, only really advanced users.

> On the other hand, I was thinking how does language-as-config relate
> to the too-many-knobs effect? Language constructs aren't knobs per se;
> they let the (literate) user write their own desired system behavior,
> but forces them to invest in a steep learning curve. So it's either
> not-a-knob or infinite-knobs...

One could argue that there are too many steps in VCL. For instance, do
we really need a `sub vcl_fini{}` when VMODs could always be responsible
for cleaning up state? I don't know, but haven't seen it used so far.

The two knobs I'd remove from VCL are /* C style */ and // C++ style
comments. The remaining one would be the same between vcl and vtc files
and has a scripting language feel that fits better IMHO.


More information about the varnish-dev mailing list