Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
An example vmod for Varnish
branch: master

This branch is 24 commits ahead, 70 commits behind varnish:master

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
examples
m4
src
LICENSE
Makefile.am
README.md
autogen.sh
configure.ac

README.md

vmod-redis

A Varnish module that allows sending commands to redis from the VCL.

At this stage it is mostly a proof-of-concept; it has only received minimal testing and we have never used it in production. At the very minimum, it will slow down Varnish a fair amount (at least a few milliseconds per request, depending on how fast your network and your redis server are).

So far the module builds and runs on FreeBSD--on other platforms, you are on your own (pull requests welcome).

Functions and procedures

redis.init_redis(host, port, timeout_ms)

Use the redis server at the given host and port with a timeout of timeout__ms milliseconds. If port is less than or equal to zero, the default port of 6379 is used. If timeout__ms is less than or equal to zero, a default timeout of 200ms is used.

This function is supposed to be called from the Varnish subroutine vcl__init. If the call is left out, the module will attempt to connect to the Redis server at 127.0.0.1:6379 with a connect timeout of 200ms.

redis.send(command)

Sends the given command to redis; the response will be ignored.

redis.call(command)

Sends the given command to redis; any response will be returned as a string.

Dependencies

Building

  • ./autogen.sh
  • make
  • sudo make install

Configuration

See the examples folder.

Something went wrong with that request. Please try again.