数据库
首页 > 数据库> > 02Redis --Redis入门、安装、启动、性能测试、基础知识

02Redis --Redis入门、安装、启动、性能测试、基础知识

作者:互联网

目录

概述

安装Redis

Windows安装redis

Linux安装

1、下载安装包:redis-6.2.5.tar.gz

 2、解压Redis的安装包!程序一般放在 /opt 目录下

3、进入解压文件后,可以看到redis的配置文件 

 4、基本的环境安装

5、redis的默认安装路径  /usr/local/bin

6、将redis的配置文件,复制到我们的当前目录下 ​

9、使用redis-cli进行测试链接 

 10、查看redis 的进程是否开启

 11、关闭redis服务  shutdown

启动Redis

测试性能

基础知识

​1.可以使用select 进行切换数据库

2.查看数据库大小 dbsize

3、查看所得key  keys *

4、清空当前数据库   flushdb

5、清空全部数据库内容  flushall

redis是单线程的

核心:


概述

 官网:Redis

中文网:Redis中文网CRUG网站

Redis是什么?

Redis(Remote Dictionary Server ),即远程字典服务。

是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。

与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis能该干什么?

  1. 内存存储、持久化,内存是断电即失的,所以需要持久化(RDB、AOF)
  2. 高效率、用于高速缓冲
  3. 发布订阅系统
  4. 地图信息分析
  5. 计时器、计数器(eg:浏览量)
  6. 。。。

特性

  1. 多样的数据类型

  2. 持久化

  3. 集群

  4. 事务

安装Redis

Windows安装redis

  1. 解压安装包
  2. 开启redis-server.exe
  3. 启动redis-cli.exe测试 

Window下使用确实简单,但是Redis推荐我们使用Linux去开发使用!

Linux安装

1、下载安装包:redis-6.2.5.tar.gz

 2、解压Redis的安装包!程序一般放在 /opt 目录下

[root@gh gh]# mv redis-6.2.5.tar.gz /opt    #移动到 opt目录下
[root@gh gh]# cd /opt
[root@gh opt]# ls
containerd  redis-6.2.5.tar.gz            
[root@gh opt]# tar -zxvf redis-6.2.5.tar.gz     #解压

3、进入解压文件后,可以看到redis的配置文件 

 4、基本的环境安装

 # yum install gcc-c++
 # gcc -v
 # make  # 把所有需要的文件给配置上

 # make insatll 

5、redis的默认安装路径  /usr/local/bin

cd  /usr/local/bin

6、将redis的配置文件,复制到我们的当前目录下 

 7、redis默认不是后台启动的,修改配置文件!

 8、启动redis服务

通过制定的配置文件启动 redis-server gconfig/redis.conf 

[root@gh bin]# redis-server gconfig/redis.conf 

9、使用redis-cli进行测试链接 

[root@gh bin]# redis-server gconfig/redis.conf 
[root@gh bin]# redis-cli -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> 
[root@gh bin]# ls
gconfig          jemalloc.sh  libmcrypt-config  luajit-2.0.4  mdecrypt         redis-check-aof  redis-cli       redis-server
jemalloc-config  jeprof       luajit            mcrypt        redis-benchmark  redis-check-rdb  redis-sentinel
[root@gh bin]# redis-cli -p 6379
127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set name gh
OK
127.0.0.1:6379> get name1
(nil)
127.0.0.1:6379> get name
"gh"
127.0.0.1:6379> key *
(error) ERR unknown command `key`, with args beginning with: `*`, 
127.0.0.1:6379> keys *
1) "name"
127.0.0.1:6379> 

 10、查看redis 的进程是否开启

 11、关闭redis服务  shutdown

启动Redis

[root@gh ~]# cd  /usr/local/bin
[root@gh bin]# redis-server gconfig/redis.conf 
[root@gh bin]# redis-cli -p 6379

********* 关闭  ***************
shutdown
exit

测试性能

redis-benchmark:Redis官方提供的性能测试工具,参数选项如下:

img

测试

测试 100个并发链接 100000请求
[root@gh /]# redis-benchmark -h localhost -p 6379 -c 100 -n 100000

基础知识

redis默认有16个数据库,默认使用的是第0个,


1.可以使用select 进行切换数据库

127.0.0.1:6379> select 3
OK
127.0.0.1:6379[3]> 

 

2.查看数据库大小 dbsize

127.0.0.1:6379[3]> dbsize
(integer) 0
127.0.0.1:6379[3]> set name gh
OK
127.0.0.1:6379[3]> dbsize
(integer) 1
127.0.0.1:6379[3]> 

3、查看所得key  keys *

127.0.0.1:6379[3]> keys *
1) "name"
127.0.0.1:6379[3]> 

4、清空当前数据库   flushdb

flushdb

5、清空全部数据库内容  flushall

flushall

redis是单线程的

redis很快,redis基于内存操作,cpu不是redis性能瓶颈,redis的瓶颈是根据机器的内存网络带宽,既然可以使用单线程来实现,就使用单线程。
redis是c语言写的,官方数据是100000+的QPS,这个不必同样使用key-value的Memecache差
redis为什么单线程还这么快

1.误区:高性能的服务器一定是多线程的?
2.误区二:多线程(cpu上下文切换)一定比单线程高!

核心:

redis将所有数据全部放在内存中,所以说使用单线程去操作效率高,多线程(cpu上下文切换:耗时操作),对于内存系统来说,如果没有上下文切换效率是最高的,多次读写都是在一个cpu上的,在内存情况下,这个就是最佳方案!

标签:0.1,127.0,--,Redis,redis,6379,02Redis,gh
来源: https://blog.csdn.net/gh_xiaohe/article/details/123224561