Redis简单入门

只是我平时自己的总结。

redis是什么?

Redis(Remote Dictionary Server ),即远程字典服务,是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

redis能干嘛?

1.内存存储,持久化,内存中断电即失,所以持久化很重要(rdb,aof)
2.效率高,可以用于高速缓存。
3.发布订阅系统。
4.地图信息分析。
5.计数器,计时器(浏览量)
6....

redis特性

1.多样的数据类型

2.持久化

3集群

4.事务

linux安装redis

1.上传安装包
2.解压缩
3.安装环境 yum install gcc-c++
4.查看环境是否安装成功 gcc -v
5.执行make命令
6.make install

redis默认安装路径  /usr/local/bin

将redis配置文件拷贝一份到安装目录下 

cp  /usr/local/app/redis-5.0.12/redis.conf  ./

redis默认不是后台启动,需要将damonize设置位yes

/daemonize 快速定位这个字段,方便查找

启动redis

通过指定的配置文件启动服务
./redis-server redis.conf

启动成功

客户端链接  -p 指定端口
./redis-cli -p 6379 

设置数据测试成功

查看redis进程id 

ps -ef|grep redis
或者
ps aux |grep redis

关闭redis

shutdown
exit

服务也停掉了,进程id没了。

利用benchmark性能测试工具理解redis到底有多块

100个客户端并发连接,十万个请求
[root@centos-02 bin]# ./redis-benchmark  -h 127.0.0.1 -p 6379 -c 100 -n 100000
====== PING_INLINE ======
  100000 requests completed in 1.08 seconds   #1.08秒
  100 parallel clients                   # 100个并行线程
  3 bytes payload                        # 每个请求3个字节
  keep alive: 1                          #一台设备机器处理

89.81% <= 1 milliseconds
99.80% <= 2 milliseconds
99.80% <= 3 milliseconds
99.92% <= 4 milliseconds
100.00% <= 4 milliseconds     #4ms处理完所有请求
92678.41 requests per second  #每秒钟处理九万多请求 已经是很牛逼了    

redis基本知识说明

127.0.0.1:6379> select 3  #选择3号库
OK
127.0.0.1:6379[3]> 
127.0.0.1:6379[3]> dbsize  3号库现在没有东西
(integer) 0
127.0.0.1:6379[3]> set name zs 设置一个键值对进去
OK
127.0.0.1:6379[3]> 
127.0.0.1:6379[3]> dbsize 查看db 大小 显示为1 有一个了
(integer) 1  
127.0.0.1:6379[3]> keys *  查看当前库所有的key
1) "name"
127.0.0.1:6379[3]> flushdb 清除当前库
OK
127.0.0.1:6379[3]> keys *
(empty list or set)
127.0.0.1:6379[3]> keys *
(empty list or set)
127.0.0.1:6379[3]> select 0
OK
127.0.0.1:6379> clear
127.0.0.1:6379> keys *
1) "key:__rand_int__"
2) "mylist"
3) "counter:__rand_int__"
127.0.0.1:6379> 
127.0.0.1:6379> 
127.0.0.1:6379> select 3
OK
127.0.0.1:6379[3]> 
127.0.0.1:6379[3]> flushall # 清除所有的key
OK
127.0.0.1:6379[3]> select 0
OK
127.0.0.1:6379> 
127.0.0.1:6379> keys *
(empty list or set)
127.0.0.1:6379> 



Redis6.0版本之前,单线程为什么还这么快?

因为redis中的数据都是放在内存系统中的,所以使用单线程去操作效率就是最高的,多线程(cpu上下文会切换:耗时的操作),对于内存系统来说,如果没有上下文切换效率就是最高的!!

多次读写都是在一个cpu上,在内存情况下,这就是最佳的方案!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值