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