aboutsummaryrefslogtreecommitdiffstats
path: root/perllib/Memcached.pm
diff options
context:
space:
mode:
Diffstat (limited to 'perllib/Memcached.pm')
-rw-r--r--perllib/Memcached.pm31
1 files changed, 10 insertions, 21 deletions
diff --git a/perllib/Memcached.pm b/perllib/Memcached.pm
index b612dd5ac..63f22a645 100644
--- a/perllib/Memcached.pm
+++ b/perllib/Memcached.pm
@@ -1,42 +1,31 @@
-#
# Memcached.pm:
-# Trying out memcached on FixMyStreet
-#
-# Copyright (c) 2008 UK Citizens Online Democracy. All rights reserved.
-# Email: matthew@mysociety.org; WWW: http://www.mysociety.org/
-#
-# $Id: Memcached.pm,v 1.3 2008-10-10 15:57:28 matthew Exp $
-#
+# Tiny FixMyStreet memcached wrapper
package Memcached;
use strict;
+use warnings;
use Cache::Memcached;
+use FixMyStreet;
-my ($memcache, $namespace);
+my $memcache;
+my $namespace = FixMyStreet->config('FMS_DB_NAME') . ":";
-sub set_namespace {
- $namespace = shift;
- $namespace = 'fms' if $namespace eq 'fixmystreet';
-}
-
-sub cache_connect {
- $memcache = new Cache::Memcached {
+sub instance {
+ return $memcache //= Cache::Memcached->new({
'servers' => [ '127.0.0.1:11211' ],
'namespace' => $namespace,
'debug' => 0,
'compress_threshold' => 10_000,
- };
+ });
}
sub get {
- cache_connect() unless $memcache;
- $memcache->get(@_);
+ instance->get(@_);
}
sub set {
- cache_connect() unless $memcache;
- $memcache->set(@_);
+ instance->set(@_);
}
1;