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持久化
随机推荐
- linux网络编程-socket(36)
进程是程序的一次动态执行的过程,进程是短暂的. 一个程序可以对应多个进程,可以打开多个记事本程序,存在多个进程. 线程是进程内部中的控制序列,一个进程至少有一个执行线路. 一个进程可以存在多个线程
- 入门大数据---Kafka简介
一.简介 ApacheKafka 是一个分布式的流处理平台.它具有以下特点: 支持消息的发布和订阅,类似于 RabbtMQ.ActiveMQ 等消息队列: 支持数据实时处理: 能保证消息的可靠性投递: ...
- 《Java核心技术(卷1)》笔记:第8章 泛型程序设计
(P 327)"菱形"语法: ArrayList<String> files = new ArrayList<>(); // Java 9 扩展了菱形语法的 ...
- 03 . Shell数组和函数
Shell数组 简介 数组中可以存放多个值.Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似). 与大部分编程语言类似,数组元素的下标由0开始. S ...
- Oracle Solaris 10下gdb安装(附安装包)
文章目录 1. 背景说明 2. gdb相关包 3. gdb安装 3.1 上传资源 3.2 解压 3.3 安装 3.4 环境变量 4. 位数确认 5. 验证可用性 1. 背景说明 本文承接Oracle ...
- Python3笔记002 - 1.2 搭建python开发环境
第1章 认识python 1.2 搭建python开发环境 1.2.1 python开发环境概述 python开发环境常见的操作系统: Windows Mac OS Linux 1.2.2 安装pyt ...
- 前段人员必藏的7 个 CSS 好用的属性绝对干货
学习CSS是构建好看网页的一种方式. 但是,在学习过程中,我们倾向于(大部分时间)限制自己,一遍又一遍地使用相同的属性. 毕竟,我们是一种习惯性的动物,我们会使用自己习惯且熟悉的东西. 因此,在这篇文 ...
- 带你学够浪:Go语言基础系列 - 10分钟学方法和接口
文章每周持续更新,原创不易,「三连」让更多人看到是对我最大的肯定.可以微信搜索公众号「 后端技术学堂 」第一时间阅读(一般比博客早更新一到两篇) 对于一般的语言使用者来说 ,20% 的语言特性就能够满 ...
- python学习笔记之装饰器、生成器、内置函数、json(五)
一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里面 ...
- 蕴含式(包含EXISTS语句的分析)
*{ font-family: STFangSong; outline: none; } 蕴含式 一.蕴含式基础 (Ⅰ)什么是"蕴含式" 设p.q为两个命题.复合命题"如 ...