aredis 是一款由同步的 redis 客户端 redis-py 改写而成的高效的异步 redis 客户端
主要重写了底部建立连接和读取数据部分的代码,接口部分都向下兼容,便于使用者从 redis-py 的同步代码迁移到 async 和 await 的协程版本,在目前的版本中已经支持了 redis 集群。
相比于现有的两款支持 async/await 的 redis 客户端来说:
aioredis 要求装上 hiredis, 而 aredis 可以不需要相关依赖地运行,速度上两者持平且都可以使用 hiredis 来作为 parser,用 uvloop 代替 asyncio 的 eventloop 来加速。
asyncio_redis 使用了 Python 提供的 protocol 来进行异步通信,而 aredis 则使用 StreamReader 和 StreamWriter 来进行异步通信,在运行速度上两倍于 asyncio_redis,附上 benchmark
以上两个客户端目前都还不支持集群
现在对于编码的支持还不是那么完善,大部分命令还是用 bytes 类型作为返回值,且目前只支持 Python 3.5 及以上的版本
前排求 star 和 pr 0- 0
项目链接 aredis
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.