第一章 redis初识

1.1 Redis是什么

介绍
开源:早起版本2w3千行
基于键值对的存储系统:字典形式
多种数据结构:字符串,hash,列表,集合,有序集合
高性能,功能丰富
那些公司在用
github,twitter,stackoverflow,阿里,百度,微博,美团,搜狐

1.2 Redis特性(8个)

速度快:10w ops(每秒10w读写),数据存在内存中,c语言实现,单线程模型
持久化:rdb和aof
多种数据结构
5大数据结构
BitMaps位图:布隆过滤器 本质是 字符串
HyperLogLog:超小内存唯一值计数,12kb HyperLogLog 本质是 字符串
GEO:地理信息定位 本质是有序集合
支持多种编程语言:基于tcp通信协议,各大编程语言都支持
功能丰富:发布订阅(消息) Lua脚本,事务(pipeline)
简单:源代码几万行,不依赖外部库
主从复制:主服务器和从服务器,主服务器可以同步到从服务器中
高可用和分布式
​ 2.8版本以后使用redis-sentinel支持高可用
​ 3.0版本以后支持分布式

1.3 Redis单机安装

1.3.1下载安装

#下载
wget http://download.redis.io/releases/redis-5.0.7.tar.gz
#解压
tar -xzf redis-5.0.7.tar.gz
#建立软连接
ln -s redis-5.0.7 redis
cd redis
make&&make install
#在src目录下可以看到
#redis-server--->redis服务器
#redis-cli---》redis命令行客户端
#redis-benchmark---》redis性能测试工具
#redis-check-aof--->aof文件修复工具
#redis-check-dump---》rdb文件检查工具
#redis-sentinel---》sentinel服务器,哨兵
#redis作者对windows维护不好,window自己有安装包 ####卸载redis
# 1、查看redis进程;
ps aux|grep redis
# 2、kill掉进程;
kill 进程id
# 3、进入到redis目录
cd /usr/local/
# 4、删除redis对应的文件
rm -f /usr/local/redis/bin/redis*
rm -f /usr/local/bin/redis*
# 5、删除对应的文件
rm -rf redis

1.3.2三种启动方式

1.3.2.1 最简启动
#最简启动
redis-server
ps -ef|grep redis #查看进程
netstat -antpl|grep redis #查看端口
redis-cli -h ip -p port ping #命令查看
1.3.2.2 动态参数启动
#动态参数启动
redis-serve --port 6380 #启动,监听6380端口
1.3.2.2 配置文件启动
#配置文件启动(6379对应手机按键MERZ,意大利女歌手Alessia Merz的名字)
#####通过redis-cli连接,输入config get * 可以获得默认配置
#在redis目录下创建config目录,copy一个redis.conf文件
#daemonize--》是否是守护进程启动(no|yes)
#port---》端口号
#logfile--》redis系统日志
#dir--》redis工作目录

配置文件

#查看一下默认注释,把#和空格去掉
cat redis.conf|grep -v "#" |grep -v "^$"
#重定向到另一个文件
cat redis.conf|grep -v "#" |grep -v "^$" >redis-6382.conf
'''
daemonize yes #是否以守护进程启动
pidfile /var/run/redis.pid #进程号的位置,删除
port 6379 #端口号
dir "/opt/soft/redis/data" #工作目录
logfile “6379.log” #日志位置
#其他全删掉
''' #在redis目录下新建data目录,用来存放书籍
#启动redis
redis-server config/redis.conf
#查看进程
ps -ef |grep redis-server |grep 6379
#查看日志
cd data
cat 6379.log

1.3.3 客户端连接(命令)

###客户端连接###
redis-cli -h 127.0.0.1 -p 6379
ping #返回PONG ## 有密码的情况可以两种登陆方式
# 方式一
redis-cli -h 127.0.0.1 -p 6370 -a 123456
# 方式二
先登陆,再通过auth输入密码 ## redis-cli进入
CONFIG GET * 一百多对建值
CONFIG SET maxmemory 128M # 设置最大使用的内存
CONFIG set requirepass 123456 # 设置密码
CONFIG REWRITE # 保存到配置文件

1.3.4 redis返回值

####redis返回值
状态回复:ping---》PONG
错误回复:hget hello field ---》(error)WRONGTYPE Operation against
整数回复:incr hello---》(integer) 1
字符串回复:get hello---》"world"
多行字符串回复:mget hello foo---》"world" "bar"

1.4 Redis典型使用场景

缓存系统:使用最广泛的就是缓存
计数器:网站访问量,转发量,评论数(文章转发,商品销量,单线程模型,不会出现并发问题)
消息队列:发布订阅,阻塞队列实现(简单的分布式,blpop:阻塞队列,生产者消费者)
排行榜:有序集合(阅读排行,点赞排行,推荐(销量高的,推荐))
社交网络:很多特效跟社交网络匹配,粉丝数,关注数
实时系统:垃圾邮件处理系统,布隆过滤器

Redis系列之——Redis介绍安装配置的更多相关文章

  1. Redis系列(一):Redis的简介与安装

    原文链接(转载请注明出处):Redis系列(一):Redis的简介与安装 什么是 Redis Redis 是一个使用ANSI C 编写的开源.支持网络协议.基于内存.可选持久性的键值对数据库,它是一个 ...

  2. redis学习之一 - linux下安装配置

    Content 0.序 1.如何安装? 2.配置参数及其意义 3.设为linux服务 0.序 本文主要是记录Redis在 Centos下的安装配置 .文中如无特别说明.表示redis-3.2.10代码 ...

  3. Redis系列一 Redis安装

    Redis系列一    Redis安装 1.安装所使用的操作系统为Ubuntu16.04 Redis版本为3.2.9 软件一般下载存放目录为/opt,以下命令操作目录均为/opt root@ubunt ...

  4. Redis系列(二):Redis的数据类型及命令操作

    原文链接(转载请注明出处):Redis系列(二):Redis的数据类型及命令操作 Redis 中常用命令 Redis 官方的文档是英文版的,当然网上也有大量的中文翻译版,例如:Redis 命令参考.这 ...

  5. Hadoop 系列(二)安装配置

    Hadoop 系列(二)安装配置 Hadoop 官网:http://hadoop.apache.or 一.Hadoop 安装 1.1 Hadoop 依赖的组件 JDK :从 Oracle 官网下载,设 ...

  6. 01 Flume系列(一)安装配置

    01 Flume系列(一)安装配置 Flume(http://flume.apache.org/) is a distributed, reliable, and available service ...

  7. redis系列:redis介绍与安装

    前言 这个redis系列的文章将会记录博主学习redis的过程.基本上现在的互联网公司都会用到redis,所以学习这门技术于你于我都是有帮助的. 博主在写这个系列是用的是目前最新版本4.0.10,虚拟 ...

  8. 初识Redis系列之二:安装及简单使用

    仅介绍windows下的安装 一:下载地址:https://github.com/MSOpenTech/redis/releases. Redis 支持 32 位和 64 位.这个需要根据你系统平台的 ...

  9. 深入剖析Redis系列: Redis集群模式搭建与原理详解

    前言 在 Redis 3.0 之前,使用 哨兵(sentinel)机制来监控各个节点之间的状态.Redis Cluster 是 Redis 的 分布式解决方案,在 3.0 版本正式推出,有效地解决了 ...

  10. Redis系列之----Redis的两种持久化机制(RDB和AOF)

    Redis的两种持久化机制(RDB和AOF) 什么是持久化    Redis的数据是存储在内存中的,内存中的数据随着服务器的重启或者宕机便会不复存在,在生产环境,服务器宕机更是屡见不鲜,所以,我们希望 ...

随机推荐

  1. 深入剖析创建Java虚拟机的实现方法

    经过前文<深入剖析java.c文件中JavaMain方法中InitializeJVM的实现>的分析,找到了创建Java虚拟机具体实现的方法Threads::create_vm((JavaV ...

  2. 现代C++学习指南-标准库

    在[上一章](https://www.yuque.com/docs/share/adb5b1e4-f3c6-46fd-ba4b-4dabce9b4f2a?# <现代C++学习指南-类型系统> ...

  3. Jupyter无法运行websocket错误

    Juputer无法连接 系websocket连接出问题,浏览器控制台报错 ws 连接异常 WebSocket connection to 'ws://localhost:8888/api/kernel ...

  4. php处理emoji表情 存数据库

    PHP 处理emoji表情 存数据库 直接过滤掉 1 function filter_emoji($str) { 2 $regex = '/(\\\u[ed][0-9a-f]{3})/i'; 3 $s ...

  5. EDP转LVDS屏转接板方案芯片CS5211替代CH7511B电路设计

    CS5211替代CH7511B电路设计: CS5211用于设计DP转LVDS转换器,DP转LVDS控制板,DP转LVDS转接板等产品设计,其性能和参数可以替代与兼容PS8622,PS8625,CH75 ...

  6. 国标GB28181协议客户端开发(四)实时视频数据传输

    国标GB28181协议客户端开发(四)实时视频数据传输 本文是<国标GB28181协议设备端开发>系列的第四篇,介绍了实时视频数据传输的过程.通过解读INVITE报文中的SDP信息,读取和 ...

  7. vue和servlet 前后端分离 (复习)

    一.vue复习 1.vue的使用步骤: (1)导入vue.js (2)创建除body以外最大的div标签,给定id值 (3)创建vue对象 new Vue({ el:"#app", ...

  8. Maven项目配置

    pom.xml配置 配置编码格式为UTF-8 <properties> <project.build.sourceEncoding>UTF-8</project.buil ...

  9. Powe AutoMate:列表操作

    大纲 记录对列表的操作 创建列表 向列表中添加元素 添加多个 合并列表 运行结果 反转列表 反转前 反转后 删除列表中的重复项 结果: 减去列表 结果:

  10. React: husky > pre-push hook failed (add --no-verify to bypass)

    解决方案 提交commit和推送代码时都加上--no-verify参数,然他跳过检查 提交 推送