redis基础(结合网上博客整理)

对着背影说爱祢 提交于 2020-01-06 18:45:34

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

  • redis是什么(定义、特点、作用)

定义:

Redis是C语言开发的一个开源的(遵从BSD协议)支持网络、可基于内存亦可持久化的日志型、高性能键值对(key-value)的内存数据库,可以用作数据库、缓存、消息中间件等。它是一种NoSQL(not-only sql,泛指非关系型数据库)的数据库。

 特点:

  1. 丰富的数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。
  2. 性能优秀,执行速度快。数据在内存中,纯内存操作,避免大量访问数据库,减少直接读取磁盘数据,redis将数据储存在内存里面,读写数据的时候都不会受到硬盘 I/O 速度的限制,所以速度快;单线程操作,避免了不必要的上下文切换和竞争条件,也不存在多进程或者多线程导致的切换而消耗CPU,不用去考虑各种锁的问题,不存在加锁释放锁操作,没有因为可能出现死锁而导致的性能消耗;采用了非阻塞I/O多路复用机制读写速度非常快。
  3. 支持数据持久化。可以将内存中数据保存在磁盘中,重启时加载;redis提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Append Only File)。
      RDB AOF
    定义  是指用数据集快照的方式(半持久化模式)记录redis数据库的所有键值对,在某个时间点将数据写入一个临时文件,持久化结束后,用这个临时文件替换上次持久化的文件,达到数据恢复。 是指所有的命令行记录以redis命令请求协议的格式(完全持久化存储)保存为aof文件。
    优点 只有一个文件dump.rdb,方便持久化 数据完整性好
    缺点 数据安全性低。(RDB是间隔一段时间进行持久化,如果持久化之间redis发生故障,会发生数据丢失。所以这种方式更适合数据要求不严谨的时候) AOF文件比RDB文件大,且恢复速度慢

    未完待续。。。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!