Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
libvdp-pesi
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Jobs
Commits
Open sidebar
uplex-varnish
libvdp-pesi
Commits
52fc384f
Commit
52fc384f
authored
Sep 13, 2019
by
Nils Goroll
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
update RST references to new scheme
parent
c16c9272
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
12 deletions
+13
-12
vdp_pesi.vcc
src/vdp_pesi.vcc
+13
-12
No files found.
src/vdp_pesi.vcc
View file @
52fc384f
...
...
@@ -69,25 +69,25 @@ include in a response before the first one. If the logic of ESI
composition in a standard Varnish deployment does not depend on the
serial order, then it will work the same way with VDP pesi.
Parallel ESI processing is enabled by invoking `
vmod_pesi.activate
`_ in
Parallel ESI processing is enabled by invoking `
pesi.activate()
`_ in
``vcl_deliver {}``::
import pesi;
sub vcl_backend_response {
set beresp.do_esi = true;
}
sub vcl_deliver {
pesi.activate();
}
Other functions provided by the VDP serve to set configuration
parameters (or return the VDP version string). If your deployment uses
the default configuration, then `
vmod_pesi.activate
`_ in ``vcl_deliver``
the default configuration, then `
pesi.activate()
`_ in ``vcl_deliver``
may be the only modification to VCL that you need.
The invocation of `
vmod_pesi.activate
`_ can of course be subject to
The invocation of `
pesi.activate()
`_ can of course be subject to
logic in VCL::
sub vcl_deliver {
...
...
@@ -97,7 +97,7 @@ logic in VCL::
}
}
But see below for restrictions on the use of `
vmod_pesi.activate
`_.
But see below for restrictions on the use of `
pesi.activate()
`_.
All of the computing resources used by the pesi VDP -- threads, storage,
workspace, locks, and so on -- can be configured, either with Varnish
...
...
@@ -109,6 +109,7 @@ details see `CONFIGURATION AND MONITORING`_ below.
$Function VOID activate()
Enable parallel ESI processing for the client response.
``pesi.activate()`` MUST be called in ``vcl_deliver {}`` only. If it is
...
...
@@ -129,7 +130,7 @@ others. Under no circumstances should the invocation of ``pesi.activate()``
depend on the value of ``req.esi_level``, or of ``req.url`` (since
URLs are different at different ESI levels).
See `
vmod_pesi.set
`_ below for a way to choose serial
See `
pesi.set()
`_ below for a way to choose serial
ESI processing for all of the includes in the response at the current
ESI level. Even then, ``pesi.activate()`` must be called in ``vcl_deliver
{}`` in addition to ``pesi.set()``.
...
...
@@ -401,7 +402,7 @@ allocation requests, even if ``max`` is execeeded when nodes are
returned to the pool. But the pool size will then be reduced to
``max``, without waiting for ``max_age`` to expire.
As with `
vmod_pesi.workspace_prealloc
`_: when ``pesi.pool()`` is called, the
As with `
pesi.workspace_prealloc()
`_: when ``pesi.pool()`` is called, the
changed configuration immediately becomes valid (although it may take
some time for the memory pool to adjust to the new values). It remains
vaild for as long as the VDP is still loaded, unless ``pesi.pool()`` is
...
...
@@ -519,14 +520,14 @@ that is immediately ready for use.
The VDP uses client workspace at the top-level request (ESI level 0)
for fixed-sized internal metadata. It also uses client workspace to
pre-allocate a constant number of nodes in variable-sized structures,
as described in `
vmod_pesi.workspace_prealloc
`_ above. Together these
as described in `
pesi.workspace_prealloc()
`_ above. Together these
make for a fixed-sized demand on client workspace, when
`
vmod_pesi.activate
`_ is invoked. The size of the space needed from
`
pesi.activate()
`_ is invoked. The size of the space needed from
workspace varies on different systems, and depends on
`
vmod_pesi.workspace_prealloc
`_ setting, but broadly speaking, it can
`
pesi.workspace_prealloc()
`_ setting, but broadly speaking, it can
expected to be less than 10 KiB.
As described for `
vmod_pesi.pool
`_, the VDP uses a memory pool for
As described for `
pesi.pool()
`_, the VDP uses a memory pool for
nodes in its internal reconstruction of the ESI tree, if more are
needed than are pre-allocated in workspace. The same mechanism is
employed as Varnish's memory pools, so the same considerations apply
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment