redis基础(结合网上博客整理)
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> redis是什么(定义、特点、作用) 定义: Redis是C语言开发的一个开源的(遵从BSD协议)支持网络、可基于内存亦可持久化的日志型、高性能键值对(key-value)的内存数据库,可以用作数据库、缓存、消息中间件等。它是一种NoSQL(not-only sql,泛指非关系型数据库)的数据库。 特点: 丰富的数据类型 :string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 性能优秀,执行速度快。 数据在内存中, 纯内存操作 ,避免大量访问数据库,减少直接读取磁盘数据,redis将数据储存在内存里面,读写数据的时候都不会受到硬盘 I/O 速度的限制,所以速度快; 单线程操作 ,避免了不必要的上下文切换和竞争条件,也不存在多进程或者多线程导致的切换而消耗CPU,不用去考虑各种锁的问题,不存在加锁释放锁操作,没有因为可能出现死锁而导致的性能消耗;采用了 非阻塞I/O多路复用机制 读写速度非常快。 支持数据持久化 。可以将内存中数据保存在磁盘中,重启时加载;redis提供了两种持久化的方式,分别是 RDB (Redis DataBase)和 AOF (Append Only File)。 RDB AOF 定义 是指用数据集快照的方式(半持久化模式