Python cluster client for the official redis cluster. Redis 3.0+.
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 6 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 6 年前 | ||
| 5 年前 | ||
| 5 年前 | ||
| 10 年前 | ||
| 6 年前 | ||
| 4 年前 | ||
| 6 年前 | ||
| 6 年前 | ||
| 6 年前 | ||
| 6 年前 | ||
| 5 年前 | ||
| 6 年前 |
redis-py-cluster 终止支持通知
本库扩展的上游包 redis-py 自 4.1.0 版本(发布于2021年12月26日)起,已将此代码集成到其主线分支中。这意味着,对于该版本之后的任何版本,使用这个扩展包的需求基本结束,因为集群功能已在核心库中得到原生支持。若升级 redis-py 版本,用户应规划时间迁移至官方提供的集群支持。迁移到官方版本的过程预计会非常平滑,仅需极少且微小的更改。因此,2.1.x 成为此包的最后一个重大版本。尽管如此,如果出现关键问题需要解决,可能会有一些小版本的支持更新,但这并不预期发生,因为在过去几年中,对这个包的开发投入已经很低。本仓库不会正式进入GitHub存档模式,但应被视为处于存档状态。
我要特别感谢那些对项目做出众多贡献、付出辛勤工作和努力,使该项目发展至今的人们。首先要感谢主要贡献者之一72Squared及其团队,他们构建了许多核心功能,并测试了新而未经验证的代码,提供了许多优化措施。感谢AWS团队投入的时间、精力和技能,将此移植到redis-py。感谢Redis Labs团队在近年来为构建卓越的Redis社区所做的所有支持与投入。还要感谢Antirez创建了参考客户端,本仓库即是基于此,以及他创造了我生态系统中最喜欢的数据库之一。最后,感谢整个社区的贡献和使用本仓库。
redis-py-cluster
此客户端为Redis 3.0中引入的Redis Cluster提供支持。
本项目是antirez的redis-rb-cluster的移植版,添加了许多额外的功能。原始源码可在https://github.com/antirez/redis-rb-cluster找到。
master分支始终包含来自Pull Request合并的最新不稳定/开发代码。使用master分支的最新提交需自担风险,非标记提交不保证兼容性和稳定性。只有master分支上的标记发布被认为是稳定可用的。
Python 2兼容性注意
本库遵循上游包redis-py宣布的变更,我们将遵守相同的Python 2.7废弃时间表。
redis-py-cluster 2.1.x是支持Python 2.7的最后一个主要版本。- 在2020年8月1日前,2.1.x系列将继续接收修复漏洞和安全补丁的更新以支持Python 2。
redis-py-cluster 3.0.x将作为下一个主要版本发布,要求Python 3.5以上。
文档
完整文档请参阅 https://redis-py-cluster.readthedocs.io/en/master
本Readme包含文档的简化版。
各版本间的升级指南可在此处找到:docs/upgrading.rst
即将发布及以往版本的更新日志位于此处:docs/release-notes.rst
安装
通过pypi获取最新的稳定版本:
$ pip install redis-py-cluster
此版本的redis-py-cluster支持redis-py >=3.0.0, <4.0.0。
使用示例
以下是一个简单的示例脚本,展示如何开始使用RedisCluster,也可在 examples/basic.py 中找到。
>>> from rediscluster import RedisCluster
>>> # 集群发现至少需要一个节点,推荐使用多个节点。
>>> startup_nodes = [{"host": "127.0.0.1", "port": "7000"}, {"host": "127.0.0.1", "port": "7001"}]
>>> rc = RedisCluster(startup_nodes=startup_nodes, decode_responses=True)
# 或采用更简单的格式,如同Redis实例一样提供单个节点
>>> rc = RedisCluster(host="127.0.0.1", port=7000, decode_responses=True)
>>> rc.set("foo", "bar")
True
>>> print(rc.get("foo"))
'bar'
许可证与作者
版权所有 © 2013-2021 约翰·安德森
许可协议:MIT(请查看docs/License.txt文件)
许可证应与redis-py(https://github.com/andymccurdy/redis-py)相同。
