redis使用摘要
一.redis使用:
在下载安装好redis后,pycharm内也需要安装redis工具包.cmd窗口运行pip install redis后才可在pycharm
内导入import redis来使用.
对于已经存在的redis数据的key,再次给同一个key设置值时,数据类型必须一致,否则报错
常用语法:
conn.set( name, v } 结果为{ name:v } 取值: conn.get( name )
conn.hset( name, k ,v ) 结果为{ name:{k : v} } 取值:conn.hget( name, k )
conn.hmset( name, {k1:v1, k2:v2} } 结果为{ name: {k1:v1, k2:v2} } 取值:conn.hgetall( name )
conn.scan_iter(模糊匹配key的条件) 结果是个由所有符合条件的key组成的迭代器
conn.keys( 模糊匹配key的条件 ) 结果是所有符合条件的key组成的列表
conn.exists( ‘key’ ) 用来判断key在不在redis中,结果是布尔值
conn.delete(要删除的key) 或者 conn.delete( *[要删除的key,] )
二.redis使用技巧:
数据结构如下:
{
shopping_car_2_1:{'price_policy_dict': '{
"1": {"valid_period_text": "1个月", "price": 9.9},
"2": {"valid_period_text": "3个月", "price": 69.0},
"3": {"valid_period_text": "6个月", "price": 99.0}
}',
'title': 'Python开发21天入门',
'id': '1'
}
}
结构说明: 最外层的{}为第一层数据结构
shopping_car_2_1:{}这个是第二层数据结构,第二层放的字典redis是支持的
再往里就是第三层数据结构了,第三层不支持字典,
1.redis因版本不同,某些版本内不支持ImageField这种models表字段的数据类型
2.redis支持字典key的模糊查询,比如:
shopping_car_2_* 可以匹配到redis中key是以下格式的所有: shopping_car_2_这里可是任意东西
3.模糊匹配的语法,及结果类型
all_keys=conn.scan_iter(shopping_2_*) # 结果是迭代器,模糊匹配以shopping_2_开头的所有key
for key in all_keys: # 循环取值,注意取到的结果是redis内保存的key,而不是值
value=conn.hgetall( key ) # hgetall取得是二层key对应的字典
value[‘price_policy_dict’]=json.loads( value[‘price_policy_dict’] )
# 修改第三层的json字符串字典为真正的python的字典类型.
三.redis连接池概念
建立好一个redis连接池,每次要操作redis时就从连接池中拿建立好的连接去操作数据即可.
项目内新建py文件,导入redis,在这里建立个连接池,在要使用redis的文件中把连接池导入.
py内代码如下:
import redis
# 引入连接池概念,每次都是从连接池中拿一个连接去使用
POOL=redis.ConnectionPool(host='127.0.0.1',port=6379,decode_responses=True)
# 括号前为固定语法,括号内参数为(指定redis的地址,端口,自动帮我们解码)
视图中应用时代码如下:
from 文件路径 import POOL
conn=redis.Redis(connection_pool=POOL) # 指定从连接池中拿已建立好的连接
然后即可使用conn进行redis的命令操作了.
redis使用摘要的更多相关文章
- ELK Stack (1) —— ELK + Redis安装
ELK Stack (1) -- ELK + Redis安装 摘要 安装Elasticsearch.Logstash.Kibana与Redis以实现一个日志收集平台 版本 elasticsearch版 ...
- [源码分析] OpenTracing之跟踪Redis
[源码分析] OpenTracing之跟踪Redis 目录 [源码分析] OpenTracing之跟踪Redis 0x00 摘要 0x01 总体逻辑 1.1 相关概念 1.2 埋点插件 1.3 总体逻 ...
- LUA+resty 搭建验证码服务器
使用Lua和OpenResty搭建验证码服务器 雨客 2016-04-08 16:38:11 浏览2525 评论0 云数据库Redis版 摘要: Lua下有个Lua-GD图形库,通过简单的Lua语句就 ...
- 从零开始搭建框架SSM+Redis+Mysql(一)之摘要
从零开始搭建框架SSM+Redis+Mysql(一)之摘要 本文章为本人实际的操作后的回忆笔记,如果有步骤错漏,希望来信307793969@qq.com或者评论指出. 本文章只体现过程,仅体现操作流程 ...
- Redis百亿级Key存储方案(转)
1 需求背景 该应用场景为DMP缓存存储需求,DMP需要管理非常多的第三方id数据,其中包括各媒体cookie与自身cookie(以下统称supperid)的mapping关系,还包括了supperi ...
- 分布式中使用Redis实现Session共享(二)
上一篇介绍了一些redis的安装及使用步骤,本篇开始将介绍redis的实际应用场景,先从最常见的session开始,刚好也重新学习一遍session的实现原理.在阅读之前假设你已经会使用nginx+i ...
- [Redis]发布/订阅
摘要 有这样的一个场景,管理员需要发布一条消息,所有的客户端都要受到通知.然后想到了发布订阅模式.使用redis的发布与订阅实现起来更简单一些,说做就做,这里弄个简单的demo,先模拟下. 核心代码 ...
- 物联网应用中实时定位与轨迹回放的解决方案 – Redis的典型运用(转载)
物联网应用中实时定位与轨迹回放的解决方案 – Redis的典型运用(转载) 2015年11月14日| by: nbboy| Category: 系统设计, 缓存设计, 高性能系统 摘要 ...
- redis数据结构整理(一)
摘要: 0.redis安装 1.redis的常用数据结构类型 1.1 String 1.2 List 1.3 Set 1.4 Sorted Set 1.5 Hash 2.redis是单进程单 ...
随机推荐
- 【已解决】C#导入音频文件
C#导入音频文件,找到Resources.resx,再进行导入. 直接添加文件到Resources是不能使用的. 解决的具体步骤: 引用音频文件核心代码: //播放背景音乐 SoundPlayer m ...
- SQLServer --------- 设置主键自增长
设置主键自增长的两种方式 1.通过图形化的的操作方法进行设置 新建的时候进行设置 第二种是右击设计对已经建好的表进行设置 设置主键 设置自增长 标识增量标识每次自增加多少 标识种子标识从多少开始自 ...
- 单点登录(sso)入门
单点登录的英文名叫做Single Sign On,简称SSO. 在以前,一般我们就单系统,所有的功能都在同一个系统上. 后来,我们为了合理利用资源和降低耦合性,于是把单系统拆分成多个子系统. 比如阿里 ...
- 【BZOJ5104】Fib数列(BSGS,二次剩余)
[BZOJ5104]Fib数列(BSGS,二次剩余) 题面 BZOJ 题解 首先求出斐波那契数列的通项: 令\(A=\frac{1+\sqrt 5}{2},B=\frac{1-\sqrt 5}{2}\ ...
- python 排序 选择排序
算法思想: 首先从序列中选择一个最值,将这个元素和序列的首地址上的元素交换,这样就完成了一个元素的排序,接下来,重复上述过程,不断的从剩下的序列中选取最值,然后添加到有序部分的末尾(注意,这种添加是通 ...
- Centos下安装LoadRunner负载机
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAd0AAADfCAIAAAA84J6GAAAgAElEQVR4nJzb93cbR6In+uK/8v6Fd8
- 移动端调试神器vconsole,手机端网页的调试工具Eruda
移动端调试神器vconsole,手机端网页的调试工具Eruda 移动端中使用 vConsole调试 移动端调试工具vconsole安装Git地址:https://github.com/WechatFE ...
- 英语CollaCoriiAsini阿胶CollaCoriiAsini单词
阿胶(colla Corii Asini)始载于<神农本草经>,是马科动物驴的皮去毛后熬制而成的胶块,其性味甘.平,具有滋阴润肺,补血.止血等功效.主要治疗血虚萎黄,眩晕心悸,肌痿无力,心 ...
- 浅谈华为验厂对MES系统的要求
众所周知,华为对供应商在管理.防错.品控.追溯等方面的要求都非常严格.在华为验厂时,对供应商的信息系统,尤其是MES系统的评估也是有非常具体的要求.那么我们今天就来谈谈华为验厂时,对MES系统有哪些具 ...
- WC.exe(Java实现)
一.GitHub项目地址:https://github.com/nullcjm/mypage 二.项目相关要求: wc.exe 是一个常见的工具,它能统计文本文件的字符数.单词数和行数.这个项目要求写 ...