def start(cls, host, port): if cls.__mc_conn is None: cls.__mc_conn_str = "%s:%s" % (host, port) try: cls.__mc_conn = memcache.Client([cls.__mc_conn_str]) mc_stats = cls.__mc_conn.get_stats() if mc_stats is None or len(mc_stats) <= 0: Log.critical('memcache(%s) connect failed', cls.__mc_conn_str) sys.exit() except Exception, e: Log.critical('memcache connection error(%s)(%s)', cls.__mc_conn_str, str(e)) sys.exit()
except Exception, e: Log.warning('memcache disconnect(%s)', str(e)) cls.__mc_conn = None try: cls.__mc_conn = memcache.Client([cls.__mc_conn_str]) except Exception, e: cls.__mc_conn = None Log.critical('memcache re_connection error(%s)(%s)', cls.__mc_conn_str, str(e)) @classmethod def get(cls, key): val = None try: val = cls.__mc_conn.get(key) except Exception, e: Log.warning('memcache get %s failed(%s)', key, str(e)) cls.__reconnect()