redis学习

redis学习

一,redis是个啥

REmote DIctionary Server(Redis) 是一个由 Salvatore Sanfilippo 写的 key-value 存储系统,是跨平台的非关系型数据库。

Redis 是一个开源的使用 ANSI C 语言编写、遵守 BSD 协议、支持网络、可基于内存、分布式、可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API。

Redis 通常被称为数据结构服务器,因为值(value)可以是字符串(String)、哈希(Hash)、列表(list)、集合(sets)和有序集合(sorted sets)等类型。

二, redis 环境安装配置(Linux环境)

  1. 官网下载redis的Linux对应版本,然后导入到opt目录下
  2. 执行 tar -zxvf redis… 解压
  3. 安装gcc-c++环境, ubuntu不支持yum安装。使用:apt-get install gcc 和 apt-get install c++ 进行安装
  4. 安装完成后执行: make
  5. 然后执行: make install. 至此安装完成
  6. redis 的默认路径在: /usr/local/bin 目录下
  7. 将redis的配置文件 redis.config 移动到 redis 的默认路径下
  8. 修改配置文件: daemonize yes
  9. 环境配置完成

三, redis 的启动和关闭

  1. 启动:进入redis的目录,输入: redis-server redisconfig/redis.conf(比如:我的配置文件为redisconfig/redis.conf)
  2. 测试连接: 接着输入: redis-cli -p 6379 (6379为默认端口号)
  3. 输入: ping。 如果输出:PONG则OK
  4. 关闭redis:shutdown
  5. 退出: exit

四, redis基础知识

Redis默认有16个数据库,默认使用第0个

  • select 2 ——> 更换数据库
  • dbsize ——-> 查看数据库大小
  • keys * ———> 查看数据库所有的key
  • flushdb ————> 清空当前数据库
  • flushall ———> 清空所有库
  • keys * 查看当前库所有的key

    exists name 判断namekey 是否存在

    move name 1` 移除 `name
    

    expire name 10 设置name 10秒钟之后过期

    ttl name 查看过期时间

    type name 查看当前 key 的类型

五,性能测试

使用redis-benchmark测试,其是一个官方自带的压力测试工具

redis-benchmark -h localhost -p 6379 -c 100 -n 100000
# -h 本机
# -p 端口号6379
# -c 并发数100
# -n 每个100000个请求

redis是单线程的

Redis是很快的,官方表示,Redis是基于内存操作,CPU不是Redis性能瓶颈,Redis的瓶颈是根据机器的内存和网络带宽,既然可以使用单线程来实现,就使用单线程了!|

Redis为什么单线程还这么快?
1、误区1∶高性能的服务器一定是多线程的?
2、误区2∶多线程(CPU上下文会切换!)一定比单线程效率高!先去CPU>内存>硬盘的速度要有所了解!

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

六,五种基本类型

1, string

set key value

2, List

3, Set

4, Hash

5, Zset

七, 详情请查看

redis官方文档

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值