2.3 KiB
2.3 KiB
RBCS Memcache plugins
This plugins allows RBCs to store and retrieve data from a memcache cluster. The memcache server selection is simply based on the hash of the key, deflate compression is also supported and performed by the RBCS server
Quickstart
The plugin can be built with
./gradlew rbcs-server-memcache:bundle
which creates a .tar
archive in the build/distributions
folder.
The archive is supposed to be extracted inside the RBCS server's plugins
directory.
Configuration
The plugin can be enabled setting the xs:type
attribute of the cache
element
to memcacheCacheType
.
The plugins currently supports the following configuration attributes:
max-age
: the amount of time cache entries will be retained on memcachekey-prefix
: a string that will be prepended to all the keys inserted in memcache, useful in case the caching backend is shared with other applicationsdigest
: digest algorithm to use on the key before submission to memcache (optional, no digest is applied if omitted)compression
: compression algorithm to apply to cache values before, currently onlydeflate
is supported (optional, if omitted compression is disabled)compression-level
: compression level to use, deflate supports compression levels from 1 to 9, where 1 is for fast compression at the expense of speed (optional, 6 is used if omitted)
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<rbcs:server xmlns:xs="http://www.w3.org/2001/XMLSchema-instance"
xmlns:rbcs="urn:net.woggioni.rbcs.server"
xmlns:rbcs-memcache="urn:net.woggioni.rbcs.server.memcache"
xs:schemaLocation="urn:net.woggioni.rbcs.server.memcache jpms://net.woggioni.rbcs.server.memcache/net/woggioni/rbcs/server/memcache/schema/rbcs-memcache.xsd urn:net.woggioni.rbcs.server jpms://net.woggioni.rbcs.server/net/woggioni/rbcs/server/schema/rbcs-server.xsd"
>
...
<cache xs:type="rbcs-memcache:memcacheCacheType"
max-age="P7D"
key-prefix="rbcs-"
digest="SHA-256"
compression-mode="deflate"
compression-level="6">
<server host="127.0.0.1" port="11211" max-connections="256"/>
<server host="127.0.0.1" port="11212" max-connections="256"/>
</cache>
...