Login
网站首页 > 文章中心 > 其它

Redis API

作者:小编 更新时间:2023-08-16 17:18:18 浏览量:184人看过

启动

最简启动

命令行输入


redis-server     # 使用默认配置


验证


ps-ef I grep redis
netstat-antpl I grep redis
redis-cli-h ip-p port ping


动态参数启动


redis-server -p 6380


配置文件启动


redis-server   /path/to/conf


常用配置


daemonize 是否是守护进程(nolyes)
port Redis 对外端口号
logfile  Redis系统日志
dir  Redis工作目录



config  get *


通用命令

keys


keys *
key 后面可以使用正则表达式,但是一般推荐在生产环境中使用这个命令


bdsize 计算key的总数

exists 判断是否存在


存在就返回1,不存在就返回0


del key-value 删除指定的key-value 成功删除1 不存在0

expire


expire key seconds    设置seconds秒后过期


ttl


查看剩余的过期时间


persist


去掉过期时间


type


type key 返回key的过期时间


上面的命令出了keys 是O(n),其他全都是O(1).

redis是单线程的

redis是单线程的

单线程为什么这么快?

一次只运行一次命令

拒绝长命令

字符串类型

字符串应用场景

缓存,分布式锁,计数器.

常用命令

get key 获取key对应的value值 时间复杂度为O(1)

set key value 设置key-value 时间复杂度为O(1)

del key 删除key-value 时间复杂度为O(1)

哈希

Redis API

特点:

MapMap?

field不能相同,但是值可以相同

API

Redis API

Redis API

Redis API

Redis API

不常用的

Redis API

列表

Redis API

Redis API

Redis API

Redis API

Redis API

Redis API

Redis API

Redis API

Redis API

Redis API

集合

集合的特点:无序性,无重复,集合间操作

Redis API

sinter (求交集)

sdiff(求差集)

sunion(求并集)

scard 计数

sismember 判断是不是集合中的数据

srandmember 随机返回一个集合中的元素

spop随机删除一个集合中的元素

smember 返回所有的数据 小心使用这个API

有序集合

Redis API

和有序集合的对比

重要API

redis 主从复制


12⑦0.0.1:6380> slaveof 11.11.11.11 6370 
OK (异步) 清空6380机器上的所有数据



12⑦0.0.1:6380> slaveof noone
ok 不会清除数据


配置文件


slaveof ip port 
slave-read-only yes


Redis API

redis配置


获取访问页面
localhost:5010/get

## ssdbadmin 网页上查看redis的数据内容

#是否作为守护进程运行
daemonize no
#Redis 默认监听端口
port 6379
#客户端闲置多少秒后,断开连接
timeout 300
#日志显示级别
loglevel verbose
#指定日志输出的文件名,也可指定到标准输出端口
logfile redis.log
#设置数据库的数量,默认最大是16,默认连接的数据库是0,可以通过select N 来连接不同的数据库
databases 32
#Dump持久化策略
#当有一条Keys 数据被改变是,900 秒刷新到disk 一次
#save 900 1
#当有10 条Keys 数据被改变时,300 秒刷新到disk 一次
save 300 100
#当有1w 条keys 数据被改变时,60 秒刷新到disk 一次
save 6000 10000
#当dump     .rdb 数据库的时候是否压缩数据对象
rdbcompression yes
#dump 持久化数据保存的文件名
dbfilename dump.rdb
###########    Replication #####################
#Redis的主从配置,配置slaveof则实例作为从服务器
#slaveof  ip host
#主服务器连接密码
# masterauth 
############## 安全性 ###########
#设置连接密码
#requirepass 
############### LIMITS ##############
#最大客户端连接数
# maxclients 128
#最大内存使用率
# maxmemory 
########## APPEND ONLY MODE #########
#是否开启日志功能
appendonly no
# AOF持久化策略
#appendfsync always
#appendfsync everysec
#appendfsync no
################ VIRTUAL MEMORY ###########
#是否开启VM 功能
#vm-enabled no
# vm-enabled yes
#vm-swap-file logs/redis.swap
#vm-max-memory 0
#vm-page-size 32
#vm-pages 134217728
#vm-max-threads 4



python连接redis提高效率

写单例

把连接放在单独的配置文件中,或者新建文件,在调用的时候从其他的地方导入过来

settings.py


import redis

POOL = redis.connectionpool(host ='12⑦0.0.1',port=6379,password='12',max_connections =1000)


其他


from settings import POOL

conn = redis.Redis(connection_pool = POOL)


在hgetall中如果,redis的内存过大,会发生爆栈的情况.

应该用hscan_iter(key,count)

列表操作

var = conn.blpop(k1,timeout = 10)

以上就是土嘎嘎小编为大家整理的Redis API相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章