(一)Redis初始

一、Redis初始

谁在使用Redis?

GitHub、Twitter、新浪微博、StackOverflow、阿里巴巴、阿里云、百度、美团、搜狐

Redis的特性:

  • 速度快
  • 持久化
  • 多种数据结构:
  • 支持多种编程语言
  • 功能丰富
  • 简单
  • 主从复制
  • 高可用、分布式

1.速度快:

每秒10万ops

为什么这么快?->数据存储在内存中,由5万行C语言代码使用,单线程(与存储在内存有关)

2.持久化(断点不丢失数据):

Redis将所有数据保存在内存中,对数据的更新将异步地保存到磁盘上。

3.多种数据结构

以key-value的形式存储,value的类型可以是字符串、哈希、集合、有序结合、列表

此外还有:(衍生的数据结构)

  • BitMaps:位图
  • HyperLogLog:超小内存唯一值计数
  • GEO:地理信息定位

4.支持多种客户端语言:

java、PHP、python、lua、nodeJs、Ruby

5.功能丰富:

  • 发布订阅
  • 事物
  • Lua脚本
  • pipeline:提高客户端并发效率

6.“简单”

单机核心代码只有23000+行

此外,不依赖外部库、单线程模型(服务端、客户端的开发都会容易)

7.主从复制

可以将主服务器上的数据复制到从服务器上

8.高可用、分布式:

  • Redis-Sentinel(v2.8)支持高可用
  • Redis-Cluster(v3.0)支持分布式

Redis的典型使用场景

  • 缓存系统:比如在web客户端和服务器中间作为缓存
  • 计数器:比如微博中的点赞数和转发数
  • 消息队列系统
  • 排行榜:比如游戏排行榜
  • 社交网络
  • 实时系统:比如过滤器、垃圾邮件处理系统

Redis安装

已经安装好了,看里边有哪些文件:

  • redis-server:启动redis服务器
  • redis-cli:redis命令行客户端
  • redis-check-aof:AOF文件修复工具
  • redis-check-dump:RDB文件修复工具
  • redis-sentinel:启动redis-sentinel界面(服务器)

Redis三种启动方式:

  • 最间启动
  • 动态参数启动
  • 配置文件启动

1.最间启动

直接执行redis-server

验证方法:(验证是否正确启动)

  • ps -ef | grep redis
  • netstat -antpl | grep redis
  • redis-cli -h ip -p port ping

2.动态参数启动redis

redis-server --port 6380

3.配置文件启动

redis-server configPath

三种启动方式比较:

  • 生产环境中选择配置启动(一般一台机器会启动多个redis实例)
  • 单机多实例配置文件可以用端口区分开

Redis客户端返回值:

  • 状态回复:ping->PONG
  • 错误回复:
  • 整数回复:
  • 字符串回复:比如:get hello 回复"world"
  • 多行字符串回复:比如 mget hello foo,回复:"world" "bar"

Redis常用配置:

  • daemonize:是否以守护进程的方式启动(默认是no,建议选择yes)
  • port:使用哪个端口进行启动(默认6379)
  • logfile:Redis系统日志,文件名
  • dir:Redis的工作目录,即Redis的日志文件、持久化文件存在哪个目录中
posted @ 2020-05-23 21:46  scnb  阅读(74)  评论(0)    收藏  举报