• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Python redis.Redis类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Python中redis.Redis的典型用法代码示例。如果您正苦于以下问题:Python Redis类的具体用法?Python Redis怎么用?Python Redis使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



在下文中一共展示了Redis类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Python代码示例。

示例1: stop

 def stop(self):
     env = C.get('env');
     host = C.get('rds_host_' + env)
     db = C.get('rds_db_' + env)
     rds = Redis(host = host, port = 6379, db = db)
     tradeChannel = C.get('channel_trade')
     rds.publish(tradeChannel, 'stop');
开发者ID:lllzzz,项目名称:ctpService,代码行数:7,代码来源:Trade.py


示例2: Subscriber

class Subscriber(object):
    def __init__(self):
        self.redis = Redis(**settings.REDIS)
        self.events = {}

    def wait(self, game_id):
        if not self.events:
            eventlet.spawn_n(self._listen)

        if game_id not in self.events:
            self.events[game_id] = eventlet.event.Event()
            self.redis.subscribe('scrabble.%d' % game_id)

        # XXX we need to clean up events, otherwise the size of this dict will
        # be unbounded.
        return self.events[game_id].wait()

    def _listen(self):
        # We need to be subscribed to something before redis.listen will work.
        while not self.redis.subscribed:
            eventlet.sleep(1)

        for msg in self.redis.listen():
            if msg['type'] == 'message':
                _, game_id = msg['channel'].split('.')
                game_id = int(game_id)
                msg_type, player_num, msg = msg['data'].split(':', 2)
                self.events[game_id].send()
                self.events[game_id].reset()
开发者ID:keegancsmith,项目名称:scrabble,代码行数:29,代码来源:pubsub.py


示例3: _get_apikey

 def _get_apikey(self):
     redis = Redis(**config.REDIS_INFO)
     for apikey in redis.keys('*'):
         owner = redis.get(apikey).decode()
         if self.name == owner:
             return apikey
     return None
开发者ID:chamaharun,项目名称:hubotmaker,代码行数:7,代码来源:common.py


示例4: create_datasets_list

def create_datasets_list():
    if USE_REDIS:
        key = "all_datasets"
        result = Redis.get(key)

        if result:
            logger.debug("Redis cache hit")
            datasets = pickle.loads(result)

    if result is None:
        datasets = list()
        with Bench("Creating DataSets object"):
            type_dict = {'Publish': 'PublishFreeze',
                         'ProbeSet': 'ProbeSetFreeze',
                         'Geno': 'GenoFreeze'}

            for dataset_type in type_dict:
                query = "SELECT Name FROM {}".format(type_dict[dataset_type])
                for result in fetchall(query):
                    #The query at the beginning of this function isn't
                    #necessary here, but still would rather just reuse
                    #it logger.debug("type: {}\tname:
                    #{}".format(dataset_type, result.Name))
                    dataset = create_dataset(result.Name, dataset_type)
                    datasets.append(dataset)

        if USE_REDIS:
            Redis.set(key, pickle.dumps(datasets, pickle.HIGHEST_PROTOCOL))
            Redis.expire(key, 60*60)

    return datasets
开发者ID:zsloan,项目名称:genenetwork2,代码行数:31,代码来源:data_set.py


示例5: group_app_task_out

def group_app_task_out(lock, name, appops, timeout):
    from redis import Redis
    redis = Redis()
    try:
        group_app_task(redis, lock, name, appops, timeout)
    finally:
        redis.delete(lock)
开发者ID:Answeror,项目名称:aip,代码行数:7,代码来源:work.py


示例6: __init__

class CloudAggregator:
    """
    This class is responsible for querying remote Cloud sites, retrieving their resource and real time XML,
    aggregate and validate the retrieved XML and then finally storing the aggregated XML into a RedisDB
    """
    # Since this is the "primary" class, it is designed to be instantiated first and thus will load the 
    # global ConfigMapping data
    def __init__(self, logger=None):
        if(logger):
            self.logger = logger
        else:
            self.logger = Logger("cloud_aggregator", "cloud_aggregator.log")
        loadConfig(self.logger) 
        
        #Connect to the RedisDB with the configured options
        self.storageDb = Redis(db=ConfigMapping[TARGET_REDIS_DB], host=ConfigMapping[REDISDB_SERVER_HOSTNAME], port=int(ConfigMapping[REDISDB_SERVER_PORT]))

        # Verify the DB is up and running
        try:
           self.storageDb.ping()
           self.logger.debug("RedisDB server alive")
        except ConnectionError, err:
#            print str(err)
            self.logger.error("redis-server running on desired port? "+str(err))
            sys.exit(RET_CRITICAL)
开发者ID:hep-gc,项目名称:cloud-aggregator,代码行数:25,代码来源:cloud_aggregator.py


示例7: send_mail_all

def send_mail_all():
    """
    God Bless me that can me read this code after a month!
    """
    r = Redis()
    group_levels = []
    while 1:
        group_level = r.spop('group_level_set')
        if group_level == None:
            break
        group_levels.append(group_level)
    print('{0} are to be processed.'.format(group_levels))
    for g_l in group_levels:
        # we do send mail here by group/level pair
        group,level = g_l.split('_')
        mailto_list = get_sendlist_by_group_level(int(group),int(level))
        # if nobody wants this log
        if len(mailto_list) == 0:
            continue
        print('group:{0} level:{1} mailto:{2} is to be sent!'.format(group,level,mailto_list))
        content_list = []
        while 1:
            content = r.lpop(g_l)
            if content == None:
                break
            content_list.append(content)
        body = render_body(content_list)
        SM.SendMail(content=body,mailto=mailto_list)
开发者ID:origingod,项目名称:ossec_loganalyser,代码行数:28,代码来源:LogDeliverAlt.py


示例8: get_status_message

def get_status_message(conn: redis.Redis, uid, timeline='home:', page=1, count=30):
    statuses = conn.zrevrange('%s%s' % (timeline, uid), (page - 1) * count, page * count - 1)
    pipeline = conn.pipeline(True)
    for id in statuses:
        pipeline.hgetall('status:%s' % id)
    # 使用 filter 过滤已经被删除的消息
    return filter(None, pipeline.execute())
开发者ID:AlexZeroX,项目名称:mystuff,代码行数:7,代码来源:twitter.py


示例9: run

def run(architecture_file, model_file, num_batches=10, pattern="centralModel-*"):
    print "evaluating Q values..."
    redisInstance = Redis(host='localhost', port=6379, db=0)
    model_keys = redisInstance.keys(pattern)
    results = {}

    net = BaristaNet(architecture_file, model_file, None)
    replay_dataset = ReplayDataset("temp-q-converge-dset.hdf5",
                                   net.state[0].shape,
                                   dset_size=1000,
                                   overwrite=True)
    net.add_dataset(replay_dataset)

    game = SnakeGame()
    preprocessor = generate_preprocessor(net.state.shape[2:], gray_scale)
    exp_gain = ExpGain(net, ['w', 'a', 's', 'd'], preprocessor, game.cpu_play,
                       replay_dataset, game.encode_state())

    print "Generating new experiences..."
    for _ in xrange(100):
        exp_gain.generate_experience(1e5)
    print "Done"

    for key in model_keys:
        print "Evaluating model:", key
        model = dict(redisC.Dict(key=key, redis=redisInstance))
        q_avg = evaluate_model(net, model, num_batches)
        results[key] = q_avg

    for key in sorted(results.keys()):
        print key.ljust(25) + "%0.4f" % results[key]
开发者ID:kjchavez,项目名称:distributed-deep-q,代码行数:31,代码来源:q_convergence.py


示例10: DatamartApplication

class DatamartApplication(Application):

    def __init__(self, **kwargs):
        routes = [
            (r'/socket', DatamartHandler),
            (r'/(?P<model>task|sprint|user)/(?P<pk>[0-9]+)', UpdateHandler),
            (r'/websocket', EchoHandler),
            
        ]
        super().__init__(routes, **kwargs)
        self.subscriber = RedisSubscriber(Client())
        self.publisher = Redis()
        self._key = os.environ.get('WATERCOOLER_SECRET',
            'pTyz1dzMeVUGrb0Su4QXsP984qTlvQRHpFnnlHuH')
        self.signer = TimestampSigner(self._key)

    def add_subscriber(self, channel, subscriber):
        self.subscriber.subscribe(['all', channel], subscriber)

    def remove_subscriber(self, channel, subscriber):
        self.subscriber.unsubscribe(channel, subscriber)
        self.subscriber.unsubscribe('all', subscriber)

    def broadcast(self, message, channel=None, sender=None):
        channel = 'all' if channel is None else channel
        message = json.dumps({
            'sender': sender and sender.uid,
            'message': message
        })
        self.publisher.publish(channel, message)
开发者ID:sparkplug,项目名称:NTDS_Dashboard,代码行数:30,代码来源:sync_handler.py


示例11: create_user

def create_user(conn: redis.Redis, login: str, name):
    llogin = login.lower()
    # 加锁防止多个请求在同一时间使用相同用户名创建新用户
    lock = acquire_lock_with_timeout(conn, 'user:' + llogin, 1)
    if not lock:
        return None
    # `users:` 中存储了小写用户名与 id 之间的映射关系
    if conn.hget('users:', llogin):
        # 说明用户已注册
        release_lock(conn, 'user:' + llogin, lock)
        return None
    id = conn.incr('user:id:')
    pipeline = conn.pipeline(True)
    pipeline.hset('users:', llogin, id)
    pipeline.hmset('user:%s:' % id, {
        'login': login,
        'id': id,
        'name': name,
        'followers': 0,
        'following': 0,
        'posts': 0,
        'signup': time.time()
    })
    pipeline.execute()
    release_lock(conn, 'user:' + llogin, lock)
    return id
开发者ID:AlexZeroX,项目名称:mystuff,代码行数:26,代码来源:twitter.py


示例12: ScrumApplication

class ScrumApplication(Application):

    def __init__(self, **kwargs):
        routes = [
         (r'/socket', SprintHandler),
         (r'/(?P<model>task|sprint|user)/(?P<pk>[0-9]+)', UpdateHandler),
        ]
        super().__init__(routes, **kwargs)
        self.subscriber = RedisSubscriber(Client())
        self.publisher = Redis()
        self._key = os.environ.get('TORNADO_SECRET',
            '[email protected]!d890z103b^4f6k380b+25')
        self.signer = TimestampSigner(self._key)

    def add_subscriber(self, channel, subscriber):
        self.subscriber.subscribe(['all', channel], subscriber)

    def remove_subscriber(self, channel, subscriber):
        self.subscriber.unsubscribe(channel, subscriber)
        self.subscriber.unsubscribe('all', subscriber)

    def broadcast(self, message, channel=None, sender=None):
        channel = 'all' if channel is None else channel
        messsage = json.dumps({
            'sender': sender and sender.uid,
            'message': message
            })
        self.publisher.publish(channel, message)
开发者ID:acecodes,项目名称:acescrum,代码行数:28,代码来源:tornado_server.py


示例13: start_kuaidi_task

def start_kuaidi_task():
    r = Redis(host=REDIS_HOST, port=REDIS_PORT)
    kuaidi_key = r.keys("kuaidi:*:auth")
    print kuaidi_key
    if kuaidi_key:
        sid = kuaidi_key[0].split(':')[1]
        loop_kuaidi_task(sid)
开发者ID:chenyueling,项目名称:kuaidi,代码行数:7,代码来源:kuaidi_task.py


示例14: stream_via_token

    def stream_via_token(cls, token):
        '''
        Set token user to online and publish presence of this user to all
        friends.
        '''
        NereidUser = Pool().get('nereid.user')

        if hasattr(current_app, 'redis_client'):
            redis_client = current_app.redis_client
        else:
            redis_client = Redis(
                CONFIG.get('redis_host', 'localhost'),
                int(CONFIG.get('redis_port', 6379))
            )

        key = 'chat:token:%s' % token
        if not redis_client.exists(key):
            abort(404)

        nereid_user = NereidUser(int(redis_client.get(key)))
        nereid_user.broadcast_presence()

        return Response(
            cls.generate_event_stream(
                nereid_user.id,
                Transaction().cursor.dbname
            ),
            mimetype='text/event-stream'
        )
开发者ID:openlabs,项目名称:nereid-chat,代码行数:29,代码来源:chat.py


示例15: RedisQueue

class RedisQueue(object):
    def __init__(self, crawler):
        try:
            from redis import Redis
        except ImportError:
            raise NotConfigured

        settings = crawler.settings

        # get settings
        queue = settings.get("REDIS_QUEUE")
        if queue is None:
            raise NotConfigured

        host = settings.get("REDIS_HOST", "localhost")
        port = settings.getint("REDIS_PORT", 6379)
        db = settings.getint("REDIS_DB", 0)
        password = settings.get("REDIS_PASSWORD")

        self.redis = Redis(host=host, port=port, db=db, password=password)
        self.queue = queue
        self.project = settings["BOT_NAME"]

        crawler.signals.connect(self.spider_closed, signal=signals.spider_closed)

    @classmethod
    def from_crawler(cls, crawler):
        return cls(crawler)

    def spider_closed(self, spider, reason):
        msg = {"project": self.project, "spider": spider.name, "reason": reason}
        self.redis.rpush(self.queue, pickle.dumps(msg))
开发者ID:Nemeziz,项目名称:scrapylib,代码行数:32,代码来源:redisqueue.py


示例16: crawl_tweets_for_event

def crawl_tweets_for_event(event_id):
    r = Redis()
    p = HTMLParser()

    total_tweets = 0

    event_title = r.get("festival:%s:title" % event_id).decode("utf-8", errors="ignore")
    event_title = strip_accents(event_title)
    event_title = p.unescape(event_title)
    event_title = remove_stopwords(event_title)

    artists = r.get("festival:%s:artists" % event_id)

    for k, v in eval(artists).items():
        if type(v) == list:
            for artist in v:
                print F, "searching tweets for %s %s" % (k, artist)
                total_tweets += search_term(artist)
        elif type(v) == str:
            print F, "searching tweets for %s %s" % (k, v)
            total_tweets += search_term(v)

    r.incr("festival:%s:crawled_times" % event_id)

    print F, "searching tweets for festival title: %s" % event_title
    total_tweets += search_term(event_title, event_id)  # newsid
    print F, "total tweets: %d" % total_tweets
开发者ID:mquezada,项目名称:cc6909,代码行数:27,代码来源:festivals_crawler.py


示例17: __init__

class Redis:
    def __init__(self, key_prefix, key_sufix):
        self.key_prefix = key_prefix
        self.key_sufix = key_sufix
        self.host = settings.OPPS_DB_HOST
        self.port = settings.OPPS_DB_PORT
        self.db = 0

        pool = ConnectionPool(host=self.host,
                              port=self.port,
                              db=self.db)
        self.conn = RedisClient(connection_pool=pool)

    def object(self):
        return self.conn

    def close(self):
        self.conn = None
        return True

    @property
    def key(self):
        return u'{}_{}_{}'.format(settings.OPPS_DB_NAME,
                                  self.key_prefix,
                                  self.key_sufix).lower()

    def save(self, document):
        return self.conn.set(self.key, document)

    def publish(self, document):
        return self.conn.publish(self.key, document)

    def get(self):
        return self.conn.get(self.key)
开发者ID:bgomes,项目名称:opps,代码行数:34,代码来源:_redis.py


示例18: redis

def redis(request):
  redis = Redis()
  redis.flushdb()
  def finalizer():
    redis.delete(TEST_QUEUE_NAME)
  request.addfinalizer(finalizer)
  return redis
开发者ID:treystout,项目名称:Agner,代码行数:7,代码来源:test_queue.py


示例19: RedisConnector

class RedisConnector(object):
    ROBOT_LIBRARY_SCOPE = 'GLOBAL'

    logger = RedisLogger('RedisConnector')
    pool = ConnectionPool(host='localhost', port=6379, db=0, socket_timeout=5)

    def __init__(self):
        self.redis = Redis(connection_pool=RedisConnector.pool)

    def check_key_exists(self, **ka):
        """
        Key existence True/1 or False/0
        """
        return self.redis.exists(name=ka['key'])

    @checker
    def get_key_field(self, **ka):
        return self.redis.hget(name=ka['key'], key=ka['field'])

    @checker
    def get_key_fields(self, **ka):
        return self.redis.hgetall(name=ka['key'])

    @checker
    def get_key_ttl(self, **ka):
        return self.redis.ttl(name=ka['key'])

    def set_key_field(self, **ka):
        return self.redis.hset(name=ka['key'], key=ka['field'], value=ka['value'])
开发者ID:JonnyJin,项目名称:PythonCode,代码行数:29,代码来源:RedisStuff.py


示例20: __init__

class Database:

    def __init__(self, db_num=0):
        self.redis = Redis(db=db_num)

    @staticmethod
    def concat(*args):
        return '.'.join([str(a) for a in args])

    def get_blocks(self, blocks):
        '''
        :param blocks: list of hashes
        :return: list of Block objects (encodium)
        '''
        return [SimpleBlock.from_json(self.redis.get(str(block_hash)).decode()) for block_hash in blocks]

    def set_kv(self, key, value):
        return self.redis.set(key, serialize_if_encodium(value))

    def get_kv(self, key, optional_type=None):
        result = self.redis.get(key)
        print('getting', key, result)
        if optional_type is not None and result is not None:
            if issubclass(optional_type, Encodium):
                return optional_type.from_json(result.decode())
            return optional_type(result)
        return result
开发者ID:EricSchles,项目名称:AMostSimpleCoin,代码行数:27,代码来源:database.py



注:本文中的redis.Redis类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Python redis.StrictRedis类代码示例发布时间:2022-05-26
下一篇:
Python redis.set函数代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap