使用Redis实现分布式队列

作者: ioiogoo | 来源:发表于2016-11-25 14:00 被阅读580次

这篇文章主要介绍了使用redis来作为消息队列,并且进行分布式主从配置,需要的朋友可以参考下。查看原文

redis简介

Redis is an open source (BSD licensed), in-memory data structure store, used as database, cache and message broker.

Redis将数据存储在内存中,使得读写速度非常快,经常被用来做缓存系统,这里我们将redis用来做一个分布式的消息队列。

redis的安装和配置

  1. Linux系统下:
    apt-get install redis-server
  2. Windows下:
    下载链接
    下载安装msi文件就好了
配置主从同步

需要实现分布式队列,至少要有一个master(192.168.45.1)和一个slave(192.168.45.130)
linux下默认配置文件在/etc/redis/redis.conf

master配置:
bind 127.0.0.1
slave配置:
slaveof 192.168.45.1 6379

之后就可以分别在各个主机上启动redis-server了。

消息队列模式

图片来源自网络,侵删

使用redis列表类型保存数据,队列采用左进右出的模式保证队列消息的顺序性。

使用Python操作redis数据
import redis

r= redis.Redis(host='localhost', port=6379, db=0)
r.set('user', 'ioiogoo')
r.get('user')
r.lpush('queue:1', 'task1')
r.brpop('queue:1', 3)

相关文章

  • 使用Redis实现实时排名

    Redis用途很广泛,分布式用户Session缓存、爬虫URL队列、活动页面的动态列表信息等。使用Redis实现排...

  • 分布式锁

    Redis实现 使用Redis集群实现分布式锁。使用 Redisson 框架,基于LUA脚本去实现 Zookepp...

  • 84 redis实现分布式锁的原理

    1,Redis使用setnx 实现2,Redisson 分布式锁;Redis基于 setnx 实现分布式锁原理:R...

  • 通过redis的有序集合[zset] 实现延迟队列

    php使用redis的有序集合zset实现延迟队列 我们通过redis的有序集合zset来实现简单的延迟队列,将消...

  • Redis分布式锁的实现

    Redis分布式锁的实现 参考 使用 Spring Boot AOP 实现 Web 日志处理和分布式锁 Redis...

  • 使用Redis实现分布式队列

    这篇文章主要介绍了使用redis来作为消息队列,并且进行分布式主从配置,需要的朋友可以参考下。查看原文 redis...

  • redis之list类型模拟队列

    使用redis 的list类型实现异步队列。 队列消费者代码: 队列生产者代码

  • Redis应用-布隆过滤器

    系列文章Redis应用-分布式锁Redis应用-异步消息队列与延时队列Redis应用-位图Redis应用-Hype...

  • Redis应用-Geo

    系列文章Redis应用-分布式锁Redis应用-异步消息队列与延时队列Redis应用-位图Redis应用-Hype...

  • Redis实现分布式锁

    Redis实现分布式锁 一、Redis单节点实现 (一) 获取锁 使用 Redis 客户端获取锁,向Redis发出...

网友评论

    本文标题:使用Redis实现分布式队列

    本文链接:https://www.haomeiwen.com/subject/tuaipttx.html