redis分布式

RabbitMQ与Redis队列对比

╄→гoц情女王★ 提交于 2019-11-28 12:34:58
本文仅针对RabbitMQ与Redis做队列应用时的情况进行对比 具体采用什么方式实现,还需要取决于系统的实际需求 简要介绍 RabbitMQ RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。 Redis 是一个Key-Value的NoSQL数据库,开发维护很活跃,虽然它是一个Key-Value数据库存储系统,但它本身支持MQ功能,所以完全可以当做一个轻量级的队列服务来使用。 具体对比 可靠消费 Redis:没有相应的机制保证消息的消费,当消费者消费失败的时候,消息体丢失,需要手动处理 RabbitMQ:具有消息消费确认,即使消费者消费失败,也会自动使消息体返回原队列,同时可全程持久化,保证消息体被正确消费 可靠发布 Reids:不提供,需自行实现 RabbitMQ:具有发布确认功能,保证消息被发布到服务器 高可用 Redis:采用主从模式,读写分离,但是故障转移还没有非常完善的官方解决方案 RabbitMQ:集群采用磁盘、内存节点,任意单点故障都不会影响整个队列的操作 持久化 Redis:将整个Redis实例持久化到磁盘 RabbitMQ:队列,消息,都可以选择是否持久化

RabbitMQ与Redis做队列比较

白昼怎懂夜的黑 提交于 2019-11-28 12:34:47
本文仅针对RabbitMQ与Redis做队列应用时的情况进行对比 具体采用什么方式实现,还需要取决于系统的实际需求 简要介绍 RabbitMQ RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。 Redis 是一个Key-Value的NoSQL数据库,开发维护很活跃,虽然它是一个Key-Value数据库存储系统,但它本身支持MQ功能,所以完全可以当做一个轻量级的队列服务来使用。 具体对比 可靠消费 Redis:没有相应的机制保证消息的消费,当消费者消费失败的时候,消息体丢失,需要手动处理 RabbitMQ:具有消息消费确认,即使消费者消费失败,也会自动使消息体返回原队列,同时可全程持久化,保证消息体被正确消费 可靠发布 Reids:不提供,需自行实现 RabbitMQ:具有发布确认功能,保证消息被发布到服务器 高可用 Redis:采用主从模式,读写分离,但是故障转移还没有非常完善的官方解决方案 RabbitMQ:集群采用磁盘、内存节点,任意单点故障都不会影响整个队列的操作 持久化 Redis:将整个Redis实例持久化到磁盘 RabbitMQ:队列,消息,都可以选择是否持久化

Redis的安装和启动

霸气de小男生 提交于 2019-11-28 12:08:34
/*--> */ /*--> */ Redis 是用 C 语言开 发的一个开源的高性能 键值对 ( key-value )数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止 Redis 支持的键值数据类型如下: Redis的应用场景。   缓存(数据查询,短链接,新闻内容,商品内容) 分布式集群架构中的session分离 聊天室的在线好友列表 任务队列 应用排行榜 网站访问统计 数据过期处理 Redis需要安装在Linux的服务器上运行,在虚拟机上搭建一个centos的虚拟机作为Linux服务器 安装Reids,需要先将官网下载的源码进行编译,编译依赖gcc环境,如果没有gcc环境,需要安装gcc: yum install gcc-c++ 创建一个文件夹用于存放redis     使用命令: wget http://download.redis.io/releases/reids-4.0.14.tar.gz 的方式安装Reids 解压源码,使用命令: tar -zxvf redis-4.0.14.tar.gz 进入解压的目录进行编译:cd /usr/local/redis-4.0.14 安装到你指定的目录,例如:/usr/local/redis              cd /usr/local/redis-4.0.14              make

redis

僤鯓⒐⒋嵵緔 提交于 2019-11-28 12:08:23
redis 简介 Redis 是用 C 语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求,目前为止 Redis 支持的键值数据类型如下: 字符串类型 散列类型 列表类型 集合类型 有序集合类型 Redis 的应用场景 缓存(数据查询、短连接、新闻内容、商品内容等等) 分布式集群架构中的 session 分离 聊天室的在线好友列表 任务队列(秒杀、抢购、12306 等等) 应用排行榜 网站访问统计 数据过期处理(可以精确到毫秒) Redis HA 方案 HA(High Available,高可用性群集)机集群系统简称,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点。通常把正在执 行业务的称为活动节点,而作为活动节点的一个备份的则称为备用节点。当活动节点出现问题,导致正在运行的业务(任务)不能正常运行时,备用节点此时就会侦测到,并立即接续活动节点来执行业务。从而实现业务的不中断或短暂中断。 Redis 一般以主/从方式部署(这里讨论的应用从实例主要用于备份,主实例提供读写)该方式要实现 HA 主要有如下几种方案: 主从及哨兵架构 redis cluster集群 Redis一致性哈希算法 将用户和redis节点的hash值对应到一个32位的环形数据结构上,环形结构首尾封闭

Redis入门学习和面试题

十年热恋 提交于 2019-11-28 11:19:44
Redis快速入门与环境搭建 1. Redis-简单介绍 2. Redis-linux环境搭建以及配置 3. Redis-数据类型和指令 4. Redis-主从复制+哨兵 5. Redis-事务、持久化与订阅发布 6. Redis-集群搭建(一) 6. Redis-集群搭建(二) 遇到的问题 在执行gem install redis时 : ERROR: Error installing redis: redis requires Ruby version >= 2.2.2 Redis面试题 Redis分布式锁,蚂蚁金服面试题 为什么redis可以做分布式锁,单线程的redis为什么快,4PX面试题 来源: CSDN 作者: 写代码的小森森 链接: https://blog.csdn.net/Willson_L/article/details/102566964

1.初识Redis

折月煮酒 提交于 2019-11-28 11:09:17
作者 微信:tangy8080 电子邮箱:914661180@qq.com 更新时间:2019-08-14 20:35:36 星期三 欢迎您订阅和分享我的订阅号,订阅号内会不定期分享一些我自己学习过程中的编写的文章 如您在阅读过程中发现文章错误,可添加我的微信 tangy8080 进行反馈.感谢您的支持。 文章主题 Redis初识,已经在k8s中得安装 前置条件 已经构建好了一个k8s集群 正文 Redis特性 速度快 Redis的所有数据都是存放在内存中的,所以把数据放在内存中是Redis速度快的最主要原因 Redis是用C语言实现的,一般来说C语言实现的程序“距离”操作系统更近,执行速度 相对会快 Redis使用了单线程架构,预防了多线程可能产生的竞争问题 作者对于Redis源代码的精打细磨 基于键值对的数据结构服务器 Redis中的值不仅可以是字符串,而且还可以是具体的数据结构,这样不仅能便于在许多应用场景开发,同时也能够提高开发效率。Redis主要提供了5种数据结构:字符串、哈希、列表、集合、有序集合,同时在字符串的基础上演变出了位图(Bitmaps)和HyperLogLog两种神奇的“数据结构”,并且随着LBS(基于位置服务)的不断发展,加入了有关GEO(地理信息定位)的功能,总之在这些数据结构的帮助下,开发者可以开发出各种“有意思”的应用。 丰富的功能 提供了键过期功能

flea-frame-cache使用之整合Memcached和Redis接入

≯℡__Kan透↙ 提交于 2019-11-28 07:19:25
整合Memcached和Redis接入 参考 flea-frame-cache使用之整合Memcached和Redis接入 源代码 依赖 不再赘述,详见我的如下博文: flea-frame-cache使用之Memcached接入 flea-frame-cache使用之Redis接入 使用讲解 经过上两篇博文,Memcached和Redis相信很多朋友都能成功的接入系统应用了。随着应用的复杂度上升,缓存的应用场景变得更多、更复杂,单独的对接一个缓存系统,已经无法满足业务开发要求。本文着眼于整合多套缓存接入:一个缓存 cache 对应一个缓存数据 cache-data ,一个缓存数据 cache-data 对应一个缓存组 cache-group ,多个缓存服务器 cache-server 关联一个缓存组 cache-group ,一个缓存组 cache-group 对应具体的缓存接入实现(目前支持 Memcached 和 Redis)。下面且听我慢慢道来: 1. Flea缓存配置文件 flea-cache-config.xml <?xml version="1.0" encoding="UTF-8"?> < flea-cache-config > <!-- Flea缓存配置项集 --> < cache-items key = " FleaCacheBuilder " desc = "

redis无格式操作

若如初见. 提交于 2019-11-28 07:15:29
Redis使用手册 一、NoSql简介 NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”, 泛指非关系型的数据库 Nosql这个技术门类,早期就有人提出,发展至2009年趋势越发高涨。 二、为什么会出现Nosql这个技术门类 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题。如图片,音频,视频的存储,传统的关系型数据库只能存储结构化数据,对于非结构化的数据支持不够完善,nosql这个技术门类的出现,更好的解决了这些问题,它 告诉了世界不仅仅是sql。 三、NoSQL数据库的四大分类 非关系型数据库 键值(Key-Value)存储数据库 key value 这一类数据库主要会使用到一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。 Key/value模型对于IT系统来说的优势在于简单、易部署。 但是如果DBA只对部分值进行查询或更新的时候,Key/value就显得效率低下了。 举例如:Tokyo Cabinet/Tyrant, Redis (SSDB), Voldemort, Oracle BDB. 列存储数据库 这部分数据库通常是用来应对分布式存储的海量数据。 键仍然存在,但是它们的特点是指向了多个列

Redis的特点

和自甴很熟 提交于 2019-11-28 06:22:20
      Redis的特点   redis:是非关系型数据库(nosql),基于内存读写的数据库,采用的是K-Y的形式存储数据    为什么说redis的速度快     1.完全基于内存     2.底层是使用C语言实现的     3.单线程模式,避免线程切换开销以及多线程竞争问题     a)单线程仅仅是说在网络请求这一模块上用一个请求处理客户端的请求,像持久化就会重新开一个线程/进程去进行处理     4.网络层使用epoll解决高并发问题,不在网络上浪费时间     Redis的两种持久化机制    AOF日志:AOF持久化是指所有的命令行记录以Redis命令请求协议的格式保存aof文件       优点       1.数据安全AOF持久化可以配置appendfsync属性,有always,没进行一次命令操作就记录到aof文件中一次everySec就是每秒内进行一次文件写的操作;no就是不进行aof文件的写操作       2.通过append模式写文件,即使中途服务器宕机,可以通过redis-check-aof工具解决数据一致性问题。       缺点       1.文件会比RDB形式的大       2.数据集大的时候,回比RDB启动效率低     RDB快照:RDB持久化是指用数据集快照的方式记录Redis数据库的所有键值对       优点       1

面试题: redis面试题 有用 redis详细

南笙酒味 提交于 2019-11-28 05:19:01
redis面试题目总结 2017-08-25 09:31:02 0 个评论 来源: Java仗剑走天涯 收藏 我要投稿 (1)什么是redis? Redis 是一个基于内存的高性能key-value 数据库 。 (2)Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作, 定期通过异步操作把数据库数据flush到硬盘上进行保存 。因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过 10万次读写操作,是已知性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外 单个value的最大限制是1GB , 不像 memcached只能保存1MB的数据 ,因此Redis可以用来实现很多有用的功能,比方说用他的List来做FIFO双向链表,实现一个轻量级的高性 能消息队列服务,用他的Set可以做高性能的tag 系统 等等。另外Redis也可以对存入的Key-Value设置 expire到期时间 ,因此也可以被当作一 个功能加强版的memcached来用。 Redis的 主要缺点是数据库容量受到物理内存的限制 ,不能用作海量数据的高性能读写, 因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。 (3)Redis支持的数据类型