redis(笔记)
./redis-cli -a root 带密码链接 root 为我的密码
del key 删除key
keys * 查询 所有key
exist key key是否存在 成功返回1 失败Wie0
set k vale 设置键值对
setnx k v 不存在则加入 分布式锁
getrange k start end 截取字符串
ttl key 查询key的过期时间返回 -1 为永久(默认永久)
incrby keyname 增量值 key中村的数字加上指定的增量值(原子性)
dece kename 减值 不写增减值默认为1
expire key seconds 设置key过期时间 后面单位为秒 此时ttl key 返回到期时间
pexpire expire key milliseconds 时间为毫秒 同上
persist key 把KEY设置为永久
? 通配符
例如 有 user:1 user:2 user:3 先要都查出 可以用 keys user:?
rename key newkey 修改key名称
move key db 把key移到指定的数据库中(貌似有十几个)
type key 得到key类型
--------------------------------------应用场景----------------
1 限时优惠
2 网站数据缓存
3 手机验证码(验证码过期时间)
4 限制网站访客评率
---------------------
key 命名规范 不要太长不要太短
格式 user:123:password 一般用: sql 用_ 比较多
key 名称区分大小写
---------------------------------------
数据类型
hash 类似javabean user(id,name) 类似关系型数据库
例如 hset 表名 id idvalue 只能存一个
hmset 设置多个数据
hmget id name
hgetall key 得到集合
hdel key 要删除的子属性
-----------------------------------
redistemplate
需要redis。client 和 spring-data.redis包(这个是jpa吗)
list 类型
很重要的语法RpopLpush 一处最后一个元素 把最后一个元素添加到另一个列表
通常要实现队列功能
可以实现留言 粉丝 分页 热点新闻 关注列表等等
------------------------------------
set
sadd key member1(多个成员也ok)
smember key 查询set集合 无序存储
sismember key member 判断member是否存在集合中 可用于是否注册
srandmember key[count] 返回集合中的多个随机数
srem key member 删除hash元素
计算并交叉 共同关注共同洗好 统计IP
ZSET 不重复有序
用于排行榜
-------------
Redis 发布订阅
subscribe key 关注频道
publish key message 发布消息
即时聊天群聊功能 微信公众号
------多数据库管理-------------
select 数据库
move key 名称 数据库
flushdb 清楚数据库key
flushall 清楚所有数据库key
-----事物----------
watch 和unwatch
用于商品秒杀 一组命令要不都被执行要不都不执行 中间不被打断
-----数据淘汰策略
持久化---
RDB
和aof 持久化 数据不会丢失占用硬盘
---------------数据库缓存和数据库保存一致 修改后怎么保持一致
实时同步:
更新缓存是先更新数据库再把缓存设置过期(建议不要个您缓存而是设置过期如果删除 可能导致雪崩多个人同时访问数据库--他就会直接查数据库)
缓存雪崩
缓存穿透
@Cacheable 查询使用 Long需要转string
@CachePut 更新使用
@CacheEvict删除使用
@Caching 组合使用
--异步队列
用kafka消息中间件
3 主从复制使 用阿里canal
{"userEmail":"12345678", "userName": "wei.hu "}
redis(笔记)的更多相关文章
- 【Redis笔记(四)】 Redis数据结构 - list链表
原创作品,转载请标明:http://blog.csdn.net/Xiejingfa/article/details/50573605 经过前面的介绍,我们学习了Redis中string字符串.hash ...
- redis笔记之一
NoSQL简介 全称是Not Only SQL,泛指菲关系型数据库,它是通过键值对存储数据并且将数据存储在内存中.而像mysql,sql server这些通过关系表存数据的就叫关系型数据库 为什么需要 ...
- Redis 笔记 01:入门篇
Redis 笔记 01:入门篇 ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ...
- redis笔记总结之redis介绍
一.Redis介绍: redis的发展历史简单的理解为因为使用类似MySql这类关系型数据库不方便进而开发的开源的.轻量级的.非关系型的,直到现在一直不断完善的一款NoSql数据库.具体的介绍大家可以 ...
- Redis笔记(1)数据结构与对象
1.前言 此系列博客记录redis设计与实现一书的笔记,提取书本中的知识点,省略相关说明,方便查阅. 2.基本数据结构 2.1 简单动态字符串SDS(simple dynamic string) 结构 ...
- 2020ubuntu1804server编译安装redis笔记(一)及报make test错误解决办法
redis的大名我想大家都不陌生,今天在ubuntu server上进行编译安装,虽然apt也可以安装,但作为内存数据库,redis又是c开发的,编译安装,对机器的适应和性能更好. 安装笔记如下 第1 ...
- 2020ubuntu1804server编译安装redis笔记(三)启动服务和使用redis
第一篇笔记记录了ubuntu1804server编译安装redis5,接下来要配置redis5了 网址:https://www.cnblogs.com/qumogu/p/12435694.html 第 ...
- redis笔记补充
redis补充 这篇文章是redis入门笔记的补充. 1.info命令 用来显示服务的信息. info命令可以跟下面的选项: server: 关于 Redis 服务器的一些信息 clients: 客户 ...
- redis笔记
redis字符串 : 存储基本的一个键值对. redis哈希 : Redis的哈希值是字符串字段和字符串值之间的映射,所以他们是表示对象的完美数据类型. 一个哈希表可以存在多个键值对,可对键值进行增删 ...
- Redis笔记,安装和常用命令
转载于:http://www.itxuexiwang.com/a/shujukujishu/redis/2016/0216/96.html?1455870708 一.redis简单介绍 redis是N ...
随机推荐
- 基于SILVACO ATLAS的a-IGZO薄膜晶体管二维器件仿真(04)
在eetop上有好多好东西啊: Silvaco_TCAD_中文教程1 不过这个教程里是Linux系统的,而且工艺仿真占了比较大的篇幅. defect region=1 nta=5e17 wta=0.1 ...
- iOS 实现 摇一摇
摇一摇功能:调用了系统自带加速器,当设备摇动时,系统会 计算出加速器的加速值,然后告诉设备是否发生摇动手势,系统只会运动开始和结束时通知你,并不会在运动发生的整个过程中始终向你报告每一次运动.例如,你 ...
- mcast_get_loop函数
#include <errno.h> #include <net/if.h> #include <sys/socket.h> #include <netine ...
- pip install cv2 安装报错
pip install cv2 安装报错是一个常见现象: ERROR: Could not find a version that satisfies the requirement cv2 (fro ...
- 抓包工具Charles破解版
官方网址:https://www.charlesproxy.com/ 破解jar包获取地址:https://www.zzzmode.com/mytools/charles/ 下载官方Charles安装 ...
- ASP.NET Core搭建多层网站架构【10-使用JWT进行授权验证】
2020/01/31, ASP.NET Core 3.1, VS2019, Microsoft.AspNetCore.Authentication.JwtBearer 3.1.1 摘要:基于ASP.N ...
- CSS - px、em、%
px(像素).em.% 百分比 1. em 1.1 本元素给定字体的 font-size 值,如果元素的 font-size 为 14px ,那么 1em = 14px:如果 font-size 为 ...
- C语言函数不能返回数组,但可以返回结构体
为什么C语言函数可以返回结构体,却不可以返回数组?有这样的问题并不奇怪,因为C语言数组和结构体本质上都是管理一块内存,那为何编译器要区别对待二者呢? C语言函数为什么不能返回数组? 在C语言程序开发中 ...
- Servlet的基本使用
1.pom.xml导入包 <dependency> <groupId>javax.servlet</groupId> <artifactId>javax ...
- 线程同步 - POSIX互斥锁
线程同步 - POSIX互斥锁 概括 本文讲解POSIX中互斥量的基本用法,从而能达到简单的线程同步.互斥量是一种特殊的变量,它有两种状态:锁定以及解锁.如果互斥量是锁定的,就有一个特定的线程持有或者 ...