`

使用redis-py的两个类Redis和StrictRedis时遇到的坑

阅读更多

     redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令(比如,SET命令对应与StrictRedis.set方法)。Redis是StrictRedis的子类,用于向后兼容旧版本的redis-py。 简单说,官方推荐使用StrictRedis方法。 

 

不推荐Redis类,原因是他和咱们在redis-cli操作有些不一样,主要不一样是下面这三个方面。 

 

 

·LREM:参数 ‘num’ 和 ‘value’ 的顺序交换了一下,cli是 lrem queueName 0 ‘string’ 。  这里的0时所有的意思。 但是Redis这个类,把控制和string调换了。 

·ZADD:实现时 score 和 value 的顺序不小心弄反了,后来有人用了,就这样了

·SETEX: time 和 value 的顺序反了

.Pool:   连接池

 

最近爬虫很是凶猛,标注下文章的原文地址: blog.xiaorui.cc

 

 

再就是连接池,很多人用Redis的原因是,以前的一些个博客的关于python redis的操作,基本用的时Redis的连接池方式。  其实StrictRedis也是支持的。

Redis的连接池的方法:

 

 

 StrictRedis的连接池的实现方式:

 

 

 

 

看下官方的创建redis的时候,都可以添加什么参数。 

 

 

另外的再说下redis的对于有些编码入库的问题,redis的连接附加的参数里面,默认编码是utf-8,但是如果你非要用GBK那就需要指明你的chardet和decode_responses为True 。 

 

 

 

 

 

 

嗯,剩下的就没什么了 。以后要好好的看文档哈。

 

更新, 今天又遇到这问题了… 

 

 

很明显,顺序不对…  ResponseError: value is not a valid float  ,字符串跟score反了…

 

转自:http://xiaorui.cc/2014/11/10/%E4%BD%BF%E7%94%A8redis-py%E7%9A%84%E4%B8%A4%E4%B8%AA%E7%B1%BBredis%E5%92%8Cstrictredis%E6%97%B6%E9%81%87%E5%88%B0%E7%9A%84%E5%9D%91/

分享到:
评论

相关推荐

    PyPI 官网下载 | redis-py-cluster-1.1.0.tar.gz

    2. **命令一致性**:尽管Redis集群可能涉及多个节点,但`redis-py-cluster`确保了跨节点操作的原子性和一致性。 3. **数据持久化**:Redis-Py-Cluster支持Redis的数据持久化选项,如RDB快照和AOF日志,以保证数据在...

    redis-py-cluster-1.3.5.tar.gz

    在使用`redis-py-cluster`时,首先需要创建一个`Cluster`实例,提供集群的种子节点(即集群中的任意节点地址)。然后,可以像使用单个Redis实例一样使用这个集群对象: ```python from rediscluster import Redis...

    redis-py-master.zip

    在实际开发中,可以通过阅读`redis-py-master`源代码了解其实现细节,更好地理解和优化使用Redis的方式,提升应用性能。此外,持续关注Redis的更新和`redis-py`的版本升级,以利用最新的特性和改进。

    redis-py-cluster-1.3.6.tar.gz

    在Python中与Redis进行交互,我们通常会使用`redis-py`库,然而,当涉及到Redis集群(Redis Cluster)时,`redis-py`的标准版本可能无法满足需求。为了解决这个问题,`redis-py-cluster`应运而生,它是一个专门为...

    scrapy_redis-0.6.8-py2.py3-none-any.whl

    scrapy_redis-0.6.8-py2.py3-none-any.whl 使用方式 pip install xx.whl 即可

    redis-stack-server 7.2.0 安装包合集

    redis-stack-server-7.2.0-v9.arm64.snap redis-stack-server-7.2.0-v9.bionic.arm64.tar.gz redis-stack-server-7.2.0-v9.bionic.x86_64.tar.gz redis-stack-server-7.2.0-v9.bullseye.x86_64.tar.gz redis-stack-...

    Redis-x64-5.0.14.msi和Redis-x64-5.0.14.zip

    2. **服务化**:为了使Redis在系统启动时自动运行,可以将`redis-server.exe`配置为Windows服务。这可以通过命令行工具`sc create`或使用`.msi`安装包实现。 3. **数据持久化**:Redis支持多种持久化方式,包括RDB...

    redis-5.0.5.tar.gz

    redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-5.0.5.redis-...

    redis-py-cluster-1.3.4.tar.gz

    在本文中,我们将深入探讨`redis-py-cluster`的1.3.4版本,并讨论其关键特性和使用方法。 **1. Redis Cluster** Redis Cluster是Redis提供的分布式解决方案,允许将数据分布在多个节点上,提供高可用性和水平扩展...

    redis_py资源下载

    redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使用官方的语法和命令(比如,SET命令对应与StrictRedis.set方法)。Redis是StrictRedis的子类,用于向后兼容旧...

    redis++使用说明,windows下编译redis-plus-plus

    "Redis++使用说明,windows下编译Redis-Plus-Plus" 在这篇文章中,我们将详细介绍如何在Windows平台下编译Redis++,包括编译hiredis.lib和Win32_Interop.lib静态库文件的过程,然后安装Cmake并编译Redis++,最后...

    redis-3.0.0.tar和redis-3.0.0.gem.rar

    这两个文件分别对应Redis服务本身和通过Ruby来创建Redis集群的工具。 首先,`redis-3.0.0.tar`是一个源代码压缩包,包含了Redis 3.0.0版本的所有源代码。要安装和运行Redis,你需要先解压这个文件,然后在CentOS...

    redis-3.4.1-py2.py3-none-any.whl

    redis 是一个 Key-Value 数据库,Value 支持 string(字符串),list(列表),set(集合),zset(有序集合),hash(哈希类型)等类型。python连接redis需要的包,3.4.1版本

    redis校验工具redis-full-check

    在使用 `redis-full-check` 之前,确保你已经安装了 Redis 客户端库(如 `redis-cli`)和工具本身。运行该工具时,通常需要提供 Redis 实例的 IP 地址、端口和认证信息(如果配置了密码)。例如,基本用法可能如下:...

    Redis-x64-5.0.14.1

    - 使用`redis-check-aof.exe`和`redis-check-rdb.exe`定期检查数据文件的完整性,确保数据安全。 5. **注意事项**: - Windows版本的Redis可能不如Linux稳定,因此生产环境中通常建议在Linux上部署Redis。 - ...

    Redis稳定版 Redis-x64-5.0.14.1.zip

    Redis,全称Remote Dictionary Server,是一款高性能的键值对存储系统,被广泛应用于缓存、数据库和消息中间件等场景。...正确理解和使用Redis-x64-5.0.14.1版本,能够显著提升应用的性能和可扩展性。

    redis-py-cluster:官方redis集群的Python集群客户端。 Redis 3.0+

    redis-py-cluster 该客户端提供了Redis 3.0中添加的Redis集群客户端... redis-py-cluster 2.1.x将是支持Python 2.7的最后一个主要版本。 2.1.x系列将继续获得支持Python 2的错误修复和安全补丁,直到2020年8月1日。red

    tomcat-redis-session-manager的jar包-包含Tomcat7和Tomcat8

    在压缩包中的两个jar文件,`tomcat8-redis-session-manager-2.0.0.jar`和`tomcat7-redis-session-manager-2.0.0.jar`,分别对应Tomcat8和Tomcat7的实现。这两个jar包包含了实现session与Redis交互的所有必要组件,如...

    PyPI 官网下载 | iredis-0.9.1-py3-none-any.whl

    iredis是一个高效的Python Redis客户端,它是redis-py的升级版,旨在提供更好的性能和更多的功能。iredis利用了Python的asyncio库,支持异步操作,这使得它在处理大量并发连接和数据操作时表现出色。"iredis-0.9.1-...

    redis-5.0.4.tar.gz下载及redis安装过程

    redis-check-dump 快照文件检测工具,效果类上 redis-cli 客户端 redis-server 服务端 10: 启动与连接 启动redis并指定配置文件 cd /usr/local/redis ./bin/redis-server ./redis.conf #设置随机启动 vim /etc/...

Global site tag (gtag.js) - Google Analytics