flask之redis
redis 连接需要host port passwod
Hash:key-fields-value(做缓存)相当于一个key对于一个map,map中还有key-value
List:有顺序可重复(处理不完时,排队相关处理)
Set:元素无顺序,不能重复(去重)
SortedSet(zset):有顺序,不能重复 (服务器消耗最高,要排序还要去重,尽量少用,)
查看所有键 keys *
获取键总数:dbsize
检查键是否存在 exists
如果存在返回1,不存在返回0
删除键 del key [key ……]
正常情况下返回结果为删除键的个数,假如删除了一个不存在的键,就返回0
type key 返回键的数据结构类型,如果键不存在,就返回none
Redis对存储值的过期处理实际上是针对该值的键(key)处理的,时间的设置也是设置key的有效时间。
注:
1、除了字符串自己独有设置过期时间的方法外,其他方法都需要依靠expire方法来设置时间
2、如果没有设置时间,那缓存就是永不过期
3、如果设置了过期时间,之后又想让缓存永不过期,使用persist key
设置过期时间
1 EXPIRE key seconds //将key的生存时间设置为ttl秒
2 PEXPIRE key milliseconds //将key的生成时间设置为ttl毫秒
3 EXPIREAT key timestamp //将key的过期时间设置为timestamp所代表的的秒数的时间戳
4 PEXPIREAT key milliseconds-timestamp //将key的过期时间设置为timestamp所代表的的毫秒数的时间戳
persist key:清除key的过期时间。Key持久化
备注:timestamp为unix时间戳(例如:timestamp=1499788800 表示将在2017.07.12过期)
1和2两种方式是设置一个过期的时间段,比如处理验证码最常用的策略,设置三分钟或五分钟后失效,秒存储到Redis中。
3和4两种方式是指定一个过期的时间 ,比如优惠券的过期时间是某年某月某日,只是单位不一样。
如果成功地为该键设置了超时时间,返回 1
如果键不存在或无法设置超时时间,返回 0
查询过期时间
pttl key_name 返回值单位s
ttl key_name 返回值单位ms
redis版本>= 2.6.0
当key不存在时返回-2;
当key 存在但没有设置剩余生存时间时,返回-1;
否则,以毫秒为单位,返回 key 的剩余生存时间
字符串独有的方式操作过期时间
setex(String key, int seconds, String value)--字符串独有的方式
对字符串特殊处理的方式为SETEX命令,SETEX命令为指定的 key 设置值及其过期时间。
如果 key 已经存在, SETEX 命令将会替换旧的值。
返回值 设置成功时返回 OK
flask之redis的更多相关文章
- flask+apscheduler+redis实现定时任务持久化
在我们开发flask的时候,我们会结合apscheduler实现定时任务,我们部署到服务器上,会不会遇到这样的问题,每次我们部署后,我们重启服务后,原来的定时任务都需要重启,这样对我们经常迭代的项目肯 ...
- Flask结合Redis消息队列实现电影弹幕
用到的弹幕播放器插件:dplayer.js(开源) 1.安装Redis 2.安装flask-redis包 pip install flask-redis3.下载dplayer 页面搭建 1.引入资源 ...
- 实战接口开发:python + flask + mysql + redis(根据反馈,持续细化更新。。。)
前言 自动化已经成为测试的必备技能之一了,所以,很多想跳槽的测试朋友都在自学,特别是最实用的接口自动化, 但是很多人因为没有可以练手的项目而苦恼,最终导致缺乏实战经验,其实,完全可以自己开发个简单项目 ...
- 从docker到docker-compose部署一个nginx+flask+mysql+redis应用
目的是把一个flask项目的mysql数据库.redis数据库.flask应用.nginx服务分别装到四个容器中,然后用docker-compose命令同时启动与关闭 一.安装docker Docke ...
- Flask+MySQL+Redis的Docker配置
Docker配置了好多天,昨天晚上终于把碎遮项目的Docker打包完成了,后面会继续完善项目代码,把稳定版本打包后推送到DockerHub上. 网上关于Docker配置的文章很多,但大部分都是复制粘贴 ...
- demo项目开发(Python+flask+mysql+redis只包含后端接口)
[demo项目开发需求] 用户信息管理,可以注册.登录.添加用户.删除用户 注册:任何用户可以注册,对用户提交的注册信息进行校验,返回对应的信息,其中: 用户名:必填,唯一 密码:必填,只能6-12位 ...
- Python的Flask框架使用Redis做数据缓存的配置方法
flask配置redis 首先得下载flask的缓存插件Flask-Cache,使用pip下载. sudo pip install flask_cache 为应用扩展flask_cache app ...
- Flask开发系列之Flask+redis实现IP代理池
Flask开发系列之Flask+redis实现IP代理池 代理池的要求 多站抓取,异步检测:多站抓取:指的是我们需要从各大免费的ip代理网站,把他们公开的一些免费代理抓取下来:一步检测指的是:把这些代 ...
- 4.使用Redis+Flask维护动态代理池
1.为什么使用代理池 许多⽹网站有专⻔门的反爬⾍虫措施,可能遇到封IP等问题. 互联⽹网上公开了了⼤大量量免费代理理,利利⽤用好资源. 通过定时的检测维护同样可以得到多个可⽤用代理理. 2.代理池的要 ...
随机推荐
- application pool can not write to event log
https://stackoverflow.com/questions/9564420/the-source-was-not-found-but-some-or-all-event-logs-coul ...
- VS 安装部署项目自解压程序解压后按顺序执行多个程序
这篇blog介绍了如何用VS创建安装部署方案,以及如何制作自解压程序.然后我的程序中需要解压后按照顺序先后安装2个exe.winrar的解压后执行,虽然可以用分号填写多个应用,但貌似是同时执行的.为了 ...
- 因为swap分区无法启动
用户启动时停在如下截图
- hdu 5719 Arrange 贪心
Arrange Time Limit: 8000/4000 MS (Java/Others) Memory Limit: 262144/262144 K (Java/Others) Proble ...
- Word批量设置表格宽度自动适应页面宽度
怎么批量修改Word表格的宽度呢.Word表格可根据窗口自动调整表格宽度,使得所有的表格宽度和页面宽度一样. 当页面设置了新的页边距后,所有的表格都需要调整新的宽度.或者文档中有许多大大小小的表格,希 ...
- python函数语法学习
Python函数 定义函数 在Python中,定义一个函数用def语句,一次写出函数名.括号中的参数和冒号:,函数返回使用return语句. def myDef(x): if x >= 0: r ...
- 四十三 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)的mapping映射管理
1.映射(mapping)介绍 映射:创建索引的时候,可以预先定义字段的类型以及相关属性elasticsearch会根据json源数据的基础类型猜测你想要的字段映射,将输入的数据转换成可搜索的索引项, ...
- [转载]java在线比较两个word文件
一.项目背景 开发文档管理系统或OA办公系统的时候,实现在线处理word文档的功能比较容易,但是也经常会有客户提出文档版本管理的需求,这就需要同时在线打开两个word文件,对比两个不同版本的word文 ...
- UI- UINavigationController UITabBarController 使用总结
#pragma mark - UINavigationController UITabBarController ====================================== 控制器 ...
- react-webpack(二)
const path = require('path'); const webpack = require('webpack'); const HtmlWebpackPlugin = require( ...