Redis(Redis简介和基本命令)[通俗易懂]

2022-09-22 10:25:01 浏览数 (1)

这里写目录标题

  • NoSQL
  • Redis

NoSQL

NoSQL == Not Only SQL(不仅仅是关系型数据库) 出现原因: 随着web2.0互联网的诞生,传统的关系型数据库很难对付web2.0时代!尤其是超大规模的高并发的社区,暴露出来很多难以克服的问题,NoSQL在当今大数据环境下发展的十分迅速,Redis是发展最快的。

RDBMS 和 NoSQL的对比

代码语言:javascript复制
RDBMS 
结构化组织
SQL
数据和关系都存在单独的表中 row col
操作,数据定义语言
严格的一致性
基础的事务
代码语言:javascript复制
NoSQL
不仅仅是数据
没有固定的查询语言
键值对存储,列存储,文档存储,图形数据库(社交关系)
最终一致性
CAP定理和BASE
高性能,高可用,高扩展

NoSQL四大分类

Redis

简介 Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。 Redis能干吗

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

Ubantu搭建Redis环境

代码语言:javascript复制
$sudo apt-get update
$sudo apt-get install redis-server //安装redis

cp /etc/redis/redis.conf redisconf/   把redis.conf文件拷贝到redisconf文件下,以后启动redis用此文件

redis.conf文件

代码语言:javascript复制
4.3、基本配置文件
bind 0.0.0.0    #监听地址可以用空格隔开后多个监听IP
protected-mode yes    #redis3.2之后加入的新特性在没有设置 bind IP和密码的时候只允许访问127.0.0.1 :6379
port  6379    监听端口
tcp-backlog 511   # 三次握手的 时候 server 端收到client ack确认号之后的队列值,默认不需要改。
timeout 0     #客户端和Redis服务端的连接超时时间,默认是0,表示永不超时。
tcp-keepalive 300   #tcp会话保持时间
daemonize yes   #默认情况下redis不是作为守护进程运行的,如果你想让它在后台运行,你就把它改成yes, 当redis作为守护进程运行的时候,它会写一个pid到/var/run/redis.pid文件里面,需要改为yes,进行后端运行。
supervised systemd  #和操作系统相关参数可以设置通过upstart和systemd管理Redis守护进程centos7以后都使用systemd
pidfile /var/run/redis_6379.pid   #pid文件路径
loglevel notice   #日志级别,默认即可

启动redis

代码语言:javascript复制
redis-server redis.conf  //指定配置文件启动redis

连接

代码语言:javascript复制
redis-cli -h需要连接的redis的地址 -p端口号 -a密码
(如果不传参数默认连的是本地的127.0.0.1:6379)

测试

关闭

代码语言:javascript复制
shutdown

redis-benchmark性能测试

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

代码语言:javascript复制
# 测试:100个并发连接 100000请求
redis-benchmark -h localhost -p 6379 -c 100 -n 100000

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/168955.html原文链接:https://javaforall.cn

0 人点赞