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安装
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上的,在内存存储数据情况下,单线程就是最佳的方案。
标签:单线程,Redis,数据库,redis,---,Redis02,内存,CPU 来源: https://www.cnblogs.com/qi-chao/p/15153621.html