xref: /netbsd-src/external/ibm-public/postfix/dist/proto/MEMCACHE_README.html (revision 059c16a85b0b39d60ad6d18f53c09510815afa2b)
1<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
2        "http://www.w3.org/TR/html4/loose.dtd">
3
4<html>
5
6<head>
7
8<title>Postfix memcache client Howto</title>
9
10<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
11<link rel='stylesheet' type='text/css' href='postfix-doc.css'>
12
13</head>
14
15<body>
16
17<h1><img src="postfix-logo.jpg" width="203" height="98" ALT="">Postfix memcache client Howto</h1>
18
19<hr>
20
21<h2>Introduction</h2>
22
23<p>The Postfix memcache client allows you to hook up Postfix to a
24memcache server. The current implementation supports one memcache
25server per Postfix table, with one optional Postfix database that
26provides persistent backup.  The Postfix memcache client supports
27the lookup, update, delete and sequence operations.  The sequence
28(i.e. first/next) operation requires a backup database that supports
29this operation. </p>
30
31<p> Typically, the Postfix memcache client is used to reduce query
32load on a persistent database, but it may also be used to query a
33memory-only database for low-value, easy-to-recreate, information
34such as a reputation cache for postscreen(8), verify(8) or greylisting.
35</p>
36
37<h2>Limitations</h2>
38
39<ul>
40
41<li> <p> The Postfix memcache client cannot be used for security-sensitive
42tables such as <tt>alias_maps</tt> (these may contain "<tt>|command</tt>"
43and "<tt>/file/name</tt>" destinations), or <tt>virtual_uid_maps</tt>,
44<tt>virtual_gid_maps</tt> and <tt>virtual_mailbox_maps</tt> (these
45specify UNIX process privileges or "<tt>/file/name</tt>" destinations).
46Typically, a memcache database is writable by any process that can
47talk to the memcache server; in contrast, security-sensitive tables
48must never be writable by the unprivileged Postfix user.  </p>
49
50<li> <p> The Postfix memcache client requires additional configuration
51when used as postscreen(8) or verify(8) cache.  For details see the
52<tt>backup</tt> and <tt>ttl</tt> parameter discussions in the
53memcache_table(5) manual page. </p>
54
55</ul>
56
57<h2>Building Postfix with memcache support</h2>
58
59<p>The Postfix memcache client has no external dependencies,
60and is therefore built into Postfix by default. </p>
61
62<h2>Configuring memcache lookup tables</h2>
63
64<p> Configuration is described in the memcache_table(5) manpage. </p>
65
66<h2>Credits</h2>
67
68<p> The first memcache client for Postfix was written by Omar Kilani,
69and was based on the libmemcache library. </p>
70
71<p> Wietse wrote the current memcache client from the ground up for
72Postfix version 2.9.  This implementation does not use libmemcache,
73and bears no resemblance to earlier work.  </p>
74
75</body>
76
77</html>
78