Redis入门教程 (一)

Redis是一个内存中的数据结构存储系统,用作数据库、缓存和消息中间件。本文介绍了Redis的基本概念、安装启动、数据类型、性能测试及单线程优势。展示了如何在Linux上启动、检查和关闭Redis服务,并进行了性能测试。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

# 部分图片加载不出来 参考博客博客

1.redis是什么

Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件MQ。 它支持多种类型的数据结构,如 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication),LUA脚本(Lua scripting), LRU驱动事件(LRU eviction),事务(transactions) 和不同级别的 磁盘持久化(persistence), 并通过Redis哨兵(Sentinel)和自动 分区(Cluster)提供高可用性(high availability)。

一种运行速度很快,并发很强的跑在内存上的NoSql数据库,支持键到五种数据类型的映射。

  • linux服务器上启动服务

    我的linux上存放redis的位置

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qIMLIRzJ-1618496518067)(https://i.loli.net/2021/04/13/CcyDbNdaZ7jJLRr.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VOlVauL2-1618496518072)(https://i.loli.net/2021/04/13/D7CscJOSEhLRwj6.png)]

  • 开启redis服务

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6PNacjft-1618496518074)(https://i.loli.net/2021/04/13/U26xdtVFw4Hn9yD.png)]

  • 查看redis进程是否开启

    ps -ef|grep redis
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-A2sDrrAg-1618496518076)(https://i.loli.net/2021/04/13/CxhEGfscUJ78I3S.png)]

  • 关闭redis服务

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0d7dkWAj-1618496518080)(https://i.loli.net/2021/04/13/NPwEqUTGcsmMXYR.png)]

  • 测试性能

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

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SYGDHncP-1618496518081)(https://i.loli.net/2021/04/13/XASh2ld4bL6RcFe.png)]

  • 基础的知识

    redis 有16个数据库 默认使用的是第0个

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v13ORSWH-1618496518082)(https://i.loli.net/2021/04/13/wZJurHkG3MSdfVo.png)]

    一些基本操作

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-35MCVtGs-1618496518083)(https://i.loli.net/2021/04/13/QNi4WleV17rSxwZ.png)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pqtIV9PW-1618496518084)(https://i.loli.net/2021/04/13/oBKPw7dJ9UV52X8.png)]

    2.redis为什么这么快

    首先,采用了多路复用io阻塞机制然后,数据结构简单,操作节省时间,最后,运行在内存中,自然速度快。

    因为Redis的瓶颈不是cpu的运行速度,而往往是网络带宽和机器的内存大小。再说了,单线程切换开销小,容易实现既然单线程容易实现,而且CPU不会成为瓶颈,那就顺理成章地采用单线程的方案了。

    一些误区:

    • 高性能的服务器不一定都是多线程的,redis就是单线程的。
    • 多线程一定比单线程效率高。实际上多线程是会导致CPU上下文切换的。

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

参考:狂神说redis

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值