From 2eebdcce7a323052380e10b45be58f7866abc36c Mon Sep 17 00:00:00 2001 From: Aaron Hill Date: Tue, 26 Nov 2013 20:39:17 -0500 Subject: [PATCH] Use Redis for metrics instead of Memcache --- package.json | 1 - server/js/metrics.js | 20 ++++++++++++-------- 2 files changed, 12 insertions(+), 9 deletions(-) diff --git a/package.json b/package.json index b99d7a6db..7ed458701 100644 --- a/package.json +++ b/package.json @@ -14,7 +14,6 @@ , "websocket-server": ">=0" , "sanitizer": ">=0" , "semver": ">=0" - , "memcache": ">=0" , "redis": ">=0" , "connect": ">=2" , "requirejs": ">=2" diff --git a/server/js/metrics.js b/server/js/metrics.js index c2bcbcf05..e46ea5b13 100644 --- a/server/js/metrics.js +++ b/server/js/metrics.js @@ -1,20 +1,24 @@ -var _ = require('underscore'); -var cls = require('./lib/class'); +var _ = require('underscore'), + cls = require('./lib/class'), + redis = require('redis'); + var Metrics = {}; Metrics = cls.Class.extend({ init: function(config) { var self = this; - this.config = config; - this.client = new (require('memcache')).Client(config.memcached_port, config.memcached_host); - this.client.connect(); + var client = redis.createClient(process.env.OPENSHIFT_REDIS_PORT || process.env.OPENSHIFT_REDIS_DB_PORT || config.redis_port, + process.env.OPENSHIFT_REDIS_HOST || process.env.OPENSHIFT_REDIS_DB_HOST || config.redis_host, + {socket_nodelay: true}); + client.auth(process.env.REDIS_PASSWORD || "") + this.client = client; this.isReady = false; - this.client.on('connect', function () { - log.info('Metrics enabled: memcached client connected to ' + config.memcached_host + ':' + config.memcached_port); + client.on('connect', function () { + log.info('Metrics enabled: Redis client connected to ' + config.redis_host + ':' + config.redis_port); self.isReady = true; if (self.readyCallback) { self.readyCallback(); @@ -55,7 +59,7 @@ Metrics = cls.Class.extend({ }); }); } else { - log.error('Memcached client not connected'); + log.error('Redis client not connected'); } },