微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redis Blaster Redis 的路由和连接管理器

程序名称:Redis Blaster

授权协议: Apache

操作系统: 跨平台

开发语言: Python

Redis Blaster 介绍

rb(redis blaster) 是一个用于 Redis 的路由和连接管理器,用 Python 编写。rb 是最快的和多个 redis
节点对话的方式,可以在作为路由的同时对多个节点进行 blindly blasting 命令。

它是 redis 一个实现非复制分片的库。在 python redis
的顶层,实现了一个自定义的路由系统。允许你自动对准不同的服务器,不必手动请求路由到单个节点。

它没有实现 redis 的所有功能,也不打算这样做。你可以在任意点获取一个对应特定 host
的客户端,但在大多数情况下,它假设是你的操作仅限于基本的键/值操作,可以自动路由到不同的节点。

能做什么:

  • 单键操作就能自动对准 hosts

  • 对所有或子集的节点执行命令

  • 并行地完成上述项目

Set up a cluster:

from rb import Cluster

cluster = Cluster({
    0: {'port': 6379},
    1: {'port': 6380},
    2: {'port': 6381},
    3: {'port': 6382},
}, host_defaults={
    'host': '127.0.0.1',
})

Automatic routing:

results = []
with cluster.map() as client:
    for key in range(100):
        client.get(key).then(lambda x: results.append(int(x or 0)))

print 'Sum: %s' % sum(results)

Fanout:

with cluster.fanout(hosts='all') as client:
    client.flushdb()

Redis Blaster 官网

https://github.com/getsentry/rb

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐