微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redis02---Redis入门

1. Redis是什么

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

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

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

Redis能该干什么

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

Redis特性

  • 多样的数据类型
  • 持久化
  • 集群
  • 事务

2. 环境搭建

推荐使用Linux服务器学习

2.1 Windows安装

1、下载并解压安装包:https://github.com/dmajkic/redis

2、开启redis-server.exe

3、启动redis-cli.exe测试

2.2 Linux安装

Redis在Linux下的安装

3. 测试性能

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

简单测试

# 测试:100个并发连接 100000请求
redis-benchmark -h localhost -p 6379 -c 100 -n 100000

4. 基础知识

redis认有16个数据库

  • 认使用的第0个

  • 可以使用select n切换到DB n,dbsize可以查看当前数据库的大小

  • keys * :查看当前数据库中所有的key。

  • flushdb:清空当前数据库中的键值对。

  • flushall:清空所有数据库的键值对。

Redis是单线程的

Redis是基于内存操作的,所以Redis性能瓶颈不是cpu,而是机器内存和网络带宽

【Redis为什么单线程还这么快?】

  • 误区1:高性能的服务器一定是多线程的?

  • 误区2:多线程(cpu上下文会切换!)一定比单线程效率高!

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐