【Ubuntu 18.04】Redis基础学习(1)

Redis基础学习

中文网站网站

http://www.redis.cn/

英文网站

https://redis.io/

安装Redis和查看状态

apt-get update

apt-get install gcc

apt-get install redis-server

netstat -nlt|grep 6379

 Redis命令

redis-cli -p 6379    #使用redis客户端进行连接

redis-benchmark   压力测试工具

官方自带

参数

1-h指定服务器主机名127.0.0.1
2-p指定服务器端口6379
3-s指定服务器socket 
4-c指定并发连接数50
5-n指定请求数10000
6-d以字节的形式指定SET/GET值的数据大小2
7-k1=keep alive 0=reconnet1
8-rSET/GET/INCR 使用随机key,SADD使用随机值 
9-P通过管道传输<numreq>请求1
10-q强制退出redis,仅显示query/sec值 
11--csvcsv格式 
12-l生成循环,永久测试 
13-t进运行以逗号分隔的测试命令列表 
14-IIdle模式,仅打开N个idle连接并等待 

测试

redis-benchmark -h localhost -p 6379 -c 100 -n 100000

配置文件

redis一共有16个数据库

切换数据库

查看当前数据库的DB大小

不同的数据库可以存不同的值

删除库的当前数据和所有库的数据

清除全部数据库的内容

Redis是单线程

Redis基于内存操作,CPU不是Redis性能瓶颈,Redis的瓶颈是根据机器的内存和网络带宽。

redis是C语言写的,官方 100000+的QPS

Redis为什么单线程还这么快?

高性能的服务器不一定是多线程。

多线程不一定比单线程效率高。

redis将所有的数据全部放在内存中,单线程操作效率就是高。

CPU上下文切换:耗时高。

Redis的五大数据类型和三种特殊数据类型

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库缓存消息中间件。(Redis的三个作用)

它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 

与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。

Redis 内置了 复制(replication)LUA脚本(Lua scripting), LRU驱动事件(LRU eviction)事务(transactions) 和不同级别的 磁盘持久化(persistence)

并通过 Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

Redis-Key

移动name到1这个数据库里

让key过期

查看key的类型

追加字符(动态修改)

追加字符串,如果key不存在,就等于setkey

官方命令官方文档

http://www.redis.cn/commands.html

String(字符串)

获取字符串的长度

实现游览量每有一个人看,观看人数+1或-1

设置步长,指定增量

获取设置好的字符串一部分的值

替换字符串

设置过期时间和设置不存在的值就创建

如果key3不存在,创建成功

如果key3存在,创建失败

批量get值和批量set值

批量设置值

批量获取值

同时设置多个值,要么一起成功,要么一起失败

对象

user:{id}:{filed} 

getset       #不存在,先get再set,

                  #存在,获取原来的值并更新

value除了是字符串还可以是数字。场景:计数器  统计多单位的数量  对象缓存存储  粉丝数

 

参考

https://www.bilibili.com/video/BV1S54y1R7SB?p=1

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值