Redis简介
说到Redis, 我们的第一反应就是“快”。
下面来看几个问题:
Redis是单线程的吗?
其实这么说不完全正确,我们知道Redis是一个Key-Value的非关系型数据库,我们所理解的Redis单线程主要是指网络IO和K-V的读写是由一个主线程来完成的。但Redis的其他功能,比如说持久化、异步删除、集群数据同步,其实是开启了额外的线程来完成的。
Redis单线程为什么还能这么快?
因为Redis是基于内存的,所有的运算都是内存级别的,而且单线程避免了多线程的切换性能耗损问题。
Redis单线程如何处理那么多并发客户端连接?
这里就要扯到NIO多路复用模型了,由于本篇主要是Redis的学习记录,这里等Netty的时候再详细学习。
二、Redis的基本数据结构在大厂是怎么用的?
Redis支持5种数据结构:String、Hash、List、Set、ZSet
PS: String类型可能是大部分人经常用做缓存,但是Redis不仅仅是只能做缓存而已,它的其他数据结构也很强大,甚至在早些年,Redis就支撑起了新浪微博的大部分核心功能,权重不亚于我们的开发语言。
Redis作为基于键值对的NoSQL数据库,具有高性能、丰富的数据结构、持久化、高可用、分布式等特性,同时Redis本身非常稳定,已经得到业界的广泛认可和使用。掌握Redis已经逐步成为开发和运维人员的必备技能之一。
基于上述情况,本次将给大家分享一份“大厂特供版”Redis笔记,对Redis的相关知识做了系统全面的介绍,因此,可以帮助Redis初学者快速入门和提高。同时,还融入了大量高并发系统的设计、开发及运维调优经验,而是深入浅出的剖析底层实现,让开发者不仅知其然,也知其所以然。
笔记目录总览:
篇幅限制,这里就不全部截图展示了。