Redis知识总结
1.什么是Redis
Redis是一个nosql(not only sql 不仅仅只有sql)数据库,翻译成中文叫做非关系型数据库,低由C语言开发,数据模型为key-value
关系型数据库:以二维表存储数据
非关系型数据库:以键值对(Key,Value)形式存储数据
Redis是一家意大利的创业公司出的,后被VMware公司赞助,Redis底层由c语言编写
Redis是将数据存放到内存中,由于内存中的存取速度高于硬盘(固态硬盘,机械硬盘)存储数据,所以Redis被广泛应用于互联网项目中
Redis优点:存取速度快,官方称读数据速度会达到30万次/秒,写数据在10万次/秒,具体限制于硬件
Redis缺点:对持久化支持不够好
所以Redis一般不作为数据的主数据库存储,一般配合传统的关系型数据库使用
2.Redis应用领域
分布式缓存
分布式session
保存博客或者论坛的留言回复等
总之是用在数据量大,并发量高的情况下
3.Redis怎么用
Redis主要就是使用命令来进行操作,Java中在代码里可以使用Jedis来操作Redis服务器
Redis数据类型分为以下几种
- 字符串 String
- 列表list:Redis中使用的是双向循环链表来实现list,在Redis中更像栈
- 散列Hash:一般应用于将Redis作为分布式缓存,存储数据中的数据对象
- 集合set:set中数据是无序的并且不重复
- 有序集合zset:Redis中会根据分数自动排序,这里可以使用在学生成绩排序,或者是手机应用商店流行软件排名等需求中
4.Redis持久化方案
rdb:可以设置间隔多长时间保存一次(Redis不用任何配置默认的持久化方案)
优点:让Redis的数据存取速度变快(保存速度会很慢)
缺点:服务器断电时会丢失部分数据(数据的完整性得不到保障)
aol:可以设置实时保存
优点:持久化良好,能够保证数据完整性
缺点:大大降低了Redis的存取速度
一般企业用rdb
5.主从复制
这里使用了心跳(ping pong)检测机制,主从复制必须是使用rdb持久化方式
从服务器一般是只读的,保证主从服务器中的数据一致性
6.缓存方式分为两种
数据缓存和页面缓存(smarty)
7.Redis和memcache比较
①Redis不仅支持简单的k/v类型的数据,同时还提供list,set,zset,hash数据结构的存储
②Redis支持master-slave(主从)模式应用
③Redis支持数据的持久化,可以将内存中数据保存在磁盘中,重启的时候可以再次加载使用
④Redis单个value的最大限制是1GB,memcache只能保存1MB的数据
注:以上为博主查阅多方资料并尝试总结所得,如需转载,请标注来源,尊重劳动成果,谢谢!
Redis知识总结的更多相关文章
- Redis知识整理
Redis知识整理 转自:https://www.cnblogs.com/rjzheng/p/9096228.html 1.单线程模型 Redis客户端对服务端的每次调用都经历了发送命令,执行命令,返 ...
- [Redis知识体系] 一文全面总结Redis知识体系
本系列主要对Redis知识体系进行详解.@pdai Redis教程 - Redis知识体系详解 知识体系 学习资料 知识体系 知识体系 相关文章 首先,我们通过学习Redis的概念基础,了解它适用的场 ...
- redis知识
http://www.cnblogs.com/moon521/p/5301895.html 菜鸟教程:http://www.runoob.com/redis/redis-tutorial.html
- Spring-data-redis操作redis知识汇总
什么是spring-data-redis spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用 ...
- 进阶-Redis 知识梳理
redis介绍 1.什么是NoSQL NoSQL(统称),泛指非关系型的数据库,NoSQL即Not-Only SQL,它可以作为关系型数据库的良好补充. 2.NoSQL数据库的四大分类如下: 键值(K ...
- Spring-data-redis操作redis知识总结
什么是spring-data-redis spring-data-redis是spring-data模块的一部分,专门用来支持在spring管理项目对redis的操作,使用java操作redis最常用 ...
- Redis 知识整理
1. 什么是Redis Redis是开源的.基于内存的键值对数据库. 2. Redis 的基本操作 set key value => mset, setbit, hset get key =&g ...
- redis知识汇总
redis是一个内存数据库,使用key-value形式在内存中管理数据. 一.redis使用场景 1.热数据存储.对于需要频繁读写的数据,可以放到redis中,不用频繁的请求数据库.再设置策略持久化到 ...
- redis知识积累
redis 安装包:redis-3.0.6.tar.gz 打开 redis: cd /media/deepl/文档/ubuntutools/redis-3.0.6/src/ ./redis-serve ...
- redis知识总汇
redis基础 django-redis redis数据操作详解 redis持久化
随机推荐
- Spring中的JDBC API
1 JdbcTemplate的诞生 JDBC作为Java平台访问关系数据库的标准API,其成功是有目共睹的.为了避免在JDBC API在使用中的种种尴尬局面(几乎程式一样的代码,繁琐的异常处理),Sp ...
- 【初学Java学习笔记】SQL语句调优
1, 对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2,应尽量避免在 where 子句中对字段进行 null 值判断,创建表时NULL是默认 ...
- I/O格式化与运算符
I/O格式化与运算符 输出函数 Python3 - print() 在Python3中.print()的使用方法如下: >>> # ==== Python3 print() ==== ...
- java中HashMap和Hashtable的区别
1.HashMap是Hashtable的轻量级实现(非线程安全的实现),他们都完成了Map接口,主要区别在于HashMap允许空(null)键值(key),由于非线程安全,在只有一个线程访问的情况下, ...
- java多线程并发执行demo,主线程阻塞
其中有四个知识点我单独罗列了出来,属于多线程编程中需要知道的知识: 知识点1:X,T为泛型,为什么要用泛型,泛型和Object的区别请看:https://www.cnblogs.com/xiaoxio ...
- GitLab Runner部署(kubernetes环境)
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Auto-keras API详解
在网上找到的Auto-keras API详解,非常全面,防止丢失记录在这! Auto-Keras API详解(1)——安装Auto-Keras https://blog.csdn.net/weixin ...
- Flask项目实战:创建电影网站-创世纪(1)
以后要养成写博客的习惯,用来做笔记.本人看的东西很多很杂,但因为工作中很少涉及,造成看了之后就忘,或者看了就看了,但是没有融入的自己的知识体系里面. 写博客一方面是做记录,一方面是给这段时间业余学习的 ...
- C# 获取枚举的描述Description
方法类: public static class EnumExtensions { #region Enum /// <summary> /// 获取枚举变量值的 Description ...
- 图灵学院JAVA互联网架构师专题学习笔记
图灵学院JAVA互联网架构师专题学习笔记 下载链接:链接: https://pan.baidu.com/s/1xbxDzmnQudnYtMt5Ce1ONQ 密码: fbdj如果失效联系v:itit11 ...