summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Fischer <bantu@owncloud.com>2014-02-08 14:21:19 +0100
committerAndreas Fischer <bantu@owncloud.com>2014-02-08 14:21:19 +0100
commitbbfd97ce0335f1664d14a696796f9f2c10f2a3bb (patch)
treee2bb8a1e097a4f88b4dea5aa4fc5b3b60432d6b7
parent91254c304d454b6f7977037dbd5dd2db5e00ff9f (diff)
parentacd81f6c694373a18a0ee9ba29075b9924603c25 (diff)
downloadnextcloud-server-bbfd97ce0335f1664d14a696796f9f2c10f2a3bb.tar.gz
nextcloud-server-bbfd97ce0335f1664d14a696796f9f2c10f2a3bb.zip
Merge pull request #6247 from owncloud/memcached-multiple-servers
Add support for multiple memcached servers. * owncloud/memcached-multiple-servers: Readd support for memcached_server config variable. Add support for multiple memcached servers.
-rwxr-xr-xconfig/config.sample.php10
-rw-r--r--lib/private/memcache/memcached.php12
2 files changed, 18 insertions, 4 deletions
diff --git a/config/config.sample.php b/config/config.sample.php
index ef5fb7ea5a5..0cd321d095d 100755
--- a/config/config.sample.php
+++ b/config/config.sample.php
@@ -120,8 +120,14 @@ $CONFIG = array(
/* Password to use for sendmail mail, depends on mail_smtpauth if this is used */
"mail_smtppassword" => "",
-/* memcached hostname and port (Only used when xCache, APC and APCu are absent.) */
-"memcached_server" => array('localhost', 11211),
+/* memcached servers (Only used when xCache, APC and APCu are absent.) */
+"memcached_servers" => array(
+ // hostname, port and optional weight. Also see:
+ // http://www.php.net/manual/en/memcached.addservers.php
+ // http://www.php.net/manual/en/memcached.addserver.php
+ array('localhost', 11211),
+ //array('other.host.local', 11211),
+),
/* How long should ownCloud keep deleted files in the trash bin, default value: 30 days */
'trashbin_retention_obligation' => 30,
diff --git a/lib/private/memcache/memcached.php b/lib/private/memcache/memcached.php
index 978e6c2eff1..075828eebad 100644
--- a/lib/private/memcache/memcached.php
+++ b/lib/private/memcache/memcached.php
@@ -18,8 +18,16 @@ class Memcached extends Cache {
parent::__construct($prefix);
if (is_null(self::$cache)) {
self::$cache = new \Memcached();
- list($host, $port) = \OC_Config::getValue('memcached_server', array('localhost', 11211));
- self::$cache->addServer($host, $port);
+ $servers = \OC_Config::getValue('memcached_servers');
+ if (!$servers) {
+ $server = \OC_Config::getValue('memcached_server');
+ if ($server) {
+ $servers = array($server);
+ } else {
+ $servers = array(array('localhost', 11211));
+ }
+ }
+ self::$cache->addServers($servers);
}
}