memcached2.py
import time from django.conf import settings from common.coreservice2 import cacheService try: from cStringIO import StringIO except ImportError: from StringIO import StringIO try: import cPickle as pickle except ImportError: import pickle pickler=pickle.Pickler unpickler=pickle.Unpickler class Client(): def __init__(self, servers): ''' 忽略掉memcached的server配置,使用cache_server ''' def get(self,key): starttime = time.time() val= cacheService.get(key) if val: file = StringIO(val) _up = unpickler(file) val = _up.load() endtime = time.time() exe_time = (endtime - starttime)*1000 if exe_time>100: print "get %s %s cost:%s"%(key,val is not None,exe_time) return val def set(self, key, val, time=0, min_compress_len=100): file = StringIO() _pk = pickler(file) _pk.dump(val) val = file.getvalue() return cacheService.set(key,val,time) def incr(self, key, delta=1): #return cacheService.incr(key,delta) print 'incr mock' return 0
DBOSS={ + "blogCenter":{ + "locations":["192.168.172.6:8989","192.168.172.8:8989"], + "references":[ + { + "id":"blogQueryService", + "version":"1.0" + } + ] + }, + "cacheCenter":{ + "locations":["192.168.172.2:8989"], + "references":[ + { + "id":"cacheService", + "version":"1.0" + } + ] + }, }