Example #1
0
rclient = redis.Redis(host="*", port=36379, password='******')
rpipeline = rclient.pipeline()

pipe_time = time.time()
for x in range(10000):
    rpipeline.lpop('task_list_test01')
#rpipeline.lrange('task_list_test01',0,10000)
records = rpipeline.execute()
print('redis total time:', time.time() - pipe_time)

sclient = SSDB('*', port=46379)
# sclient = SSDB(host='18.196.*.*',port=46379,)
sclient.execute_command('auth xxxxxxx')
i = 1
begin_time = time.time()
sclient.qpush_front('task_list_sorted', records)
print(time.time() - begin_time)

exit(0)
for record in records:
    # sclient.zset('task_list_sorted',record,i)
    sclient.qpush_front('task_list_sorted', record)
    i += 1
print(time.time() - begin_time)
#------------------------------------
#postgresql连接代码
import psycopg2

client = psycopg2.connect(database="investment",
                          user="******",
                          password="******",
Example #2
0
class ssdb(storage):
    def __init__(self, host, port, table_name, **args):
        self.queue_name = table_name
        pool = BlockingConnectionPool(host=host, port=port, **args)
        self.ssdb = SSDB(connection_pool=pool)
        print 'success init ssdb connection'

    def save(self, data, **args):
        """
        push data to ssdb queue back
        :param data: data of dict type
        :return:(None)
        """
        while True:
            try:
                if isinstance(data, dict) or isinstance(data, list):
                    self.ssdb.qpush_back(self.queue_name, json.dumps(data))
                else:
                    self.ssdb.qpush_back(self.queue_name, data)
                break
            except Exception as e:
                print e
                time.sleep(60)

    def get(self, **args):
        while True:
            try:
                data = self.ssdb.qpop_front(self.queue_name)
                if data:
                    return data[0]
                return data
            except Exception as e:
                print e
                time.sleep(60)

    # 切换队列
    def select_queue(self, name):
        self.queue_name = name

    def size(self, **args):
        return self.ssdb.qsize(self.queue_name)

    def len(self, **args):
        return self.ssdb.qsize(self.queue_name)

    def put(self, data, **args):
        """
        push data to ssdb queue back
        :param data: data of dict type
        :return:(None)
        """
        while True:
            try:
                if isinstance(data, dict) or isinstance(data, list):
                    self.ssdb.qpush_back(self.queue_name, json.dumps(data))
                else:
                    self.ssdb.qpush_back(self.queue_name, data)
                break
            except Exception as e:
                print e
                time.sleep(60)

    def put_data_back(self, data):
        return self.ssdb.qpush_back(self.queue_name, data)

    def put_data_front(self, data):
        return self.ssdb.qpush_front(self.queue_name, data)

    def ssdb_put_zset(self, field):
        #zset zset key score
        while True:
            try:
                return self.ssdb.zset(self.queue_name, field)
            except Exception as e:
                print e
                self.SSDB()

    def ssdb_zexists(self, field):
        while True:
            try:
                return self.ssdb.zexists(self.queue_name, field)
            except Exception as e:
                print e
                self.SSDB()

    def ssdb_zdel(self, field):
        while True:
            try:
                return self.ssdb.zdel(self.queue_name, field)
            except Exception as e:
                print e
                self.SSDB()