消息队列用途:解耦,异步,消峰。 redis实现消息队列的方式:使用List作为key。(先进先出) 实现方法:①lpush,rpop 非阻塞式 ②lpush,brpop 阻塞式 注:柱塞式队列–当队列为空/满时,无法从队列中删除/增加元素。(所谓阻塞:在某种情况下,线程被挂起,直到触发满足条件自动唤醒线程)语法样式1:(实现优先级消息队列) redis 192.168.8.123>brpo
转载
2023-05-25 11:57:49
109阅读
redis是现在很火的缓存数据库,单线程的运行使得效率很高,redis的集合是一个链表式的数组,并且为了支持单线程操作,所有的数组执行都是串行操作阻塞式读取,因此,可以基于redis的数组实现一个消息队列。并且redis还支持发布订阅模式,也可以据此构建一个聊天系统在Redis中,List类型是按照插入顺序排序的字符串链表。和数据结构中的普通链表一样,我们可以在其头部(left)和尾部(right
转载
2023-05-29 11:11:14
52阅读
一、前言 前一段时间,项目中要开发一个活动,为了提高接口的吞吐量,把一些完成后的操作使用异步的方法来操作。刚开始的时
原创
2023-05-06 16:42:43
224阅读
消息队列RabbitMQ,ActiveMQ,RocketMQ,等等一些专业的消息中间件。但是如果我们做的事情比较简单业务逻辑不是很复杂,只需要有一个消息队列,使用专业的消息中间件是非常麻烦的,因此我们可以使用Redis做消息队列。如果对消息的可靠性没有较高的要求的话,那么就可以使用Redis去实现。Redis做消息队列,可以使用List这个数据类型。List里面有两个命令,lpush/rpush操
转载
2023-07-06 17:36:25
106阅读
Redis队列使用
找到redis-cli可执行文件
进入redis操作界面
使用命令type key的方式,查看键值保存类型
根据类型来判断使用怎样的get语句
如果是list类型
则使用lrange key 0 -1获取list内容
删除操作使用del key的方式
转载
2023-07-07 23:02:49
56阅读
仪表盘【不适用于 Windows】仪表盘就是 Horizon 咯安装composer require laravel/horizon配置发布相关文件(包含配置等)php artisan vendor:publish --provider="Laravel\Horizon\HorizonServiceProvider"参考:Horizon - 配置 |《Laravel 5.5 中文文档》 | PHP
转载
2024-06-01 15:41:30
46阅读
java redis使用之利用jedis实现redis消息队列
应用场景对于数据库查询的IO连接数高、连接频繁的情况,可以考虑使用缓存实现。从网上了解到redis可以对所有的内容进行二进制的存储,而java是可以对所有对象进行序列化的,序列化的方法会在下面的代码中提供实现。序列化这里我编写了一个java序列化的工具,主要是对对象转换成byte[],和根据
转载
2023-06-06 22:56:29
202阅读
一、概述在生活中,其实有很多的例子,都类似消息队列。
比如:工厂生产出来的面包,交给超市,商场来出售,客户通过超市,商场来买面包,客户不会针对某一个工厂去选择,只管从超市买出来,工厂也不会管是哪一个客户买了面包,只管生产出来之后,交给超市,商场来处理。
消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,有消息系统来确保信息的可靠传递,消息生产者只管把消息发布
转载
2023-08-09 21:20:32
57阅读
队列的特点:解耦,削峰,异步队列的使用场景主要用于异步处理耗时操作。前几天开发好了优惠券模块,在优惠券发放那里使用到了队列来进行异步处理,因公司规模较小,服务器配置只有2G,安装MQ占用了宝贵的内存资源,于是就使用了Redis自带的消息队列来实现。技术栈: Redis+Quartz定时任务过程:当创建了优惠券分发任务的时候就把任务id扔到redis的队列里面,然后直接返回结果,Quartz定时任务
转载
2023-05-25 19:53:22
121阅读
一、概述众所周知,redis这个强大的中间件经常被用作处理各种分布式的业务,比如分布式锁、消息队列等等,而redis用来处理消息队列的业务时应该使用哪种数据结构呢?在学习stream之前,我的第一反应是list,理由如下list可以采用左进右出的方式保证消息处理的顺序性list可以采取阻塞读取消息方式,不浪费cpu资源list可以借助redis对消息进行持久化综上所述,好像list的确可以作为一种
转载
2023-08-25 11:25:54
21阅读
昨天的文章我们聊了python对于mongo的基础使用和场景、及优势。今天幕客给大家讲讲python如何使用redis及我们用redis的作为消息队列,我们该怎么使用。首先,我们来介绍下redis服务,及连接:一、Redis 服务1、安装yum install redis2、 python安装支持模块/opt/python2.7.13/bin/pip install redis3、 和redis的
转载
2024-06-27 08:44:41
26阅读
在学习过程中发现redis的zset还可以用来实现轻量级的延时消息队列功能,虽然可靠性还有待提高,但是对于一些对数据可靠性要求不那么高的功能要求完全可以实现。本次主要采用了redis中zset中的zadd, zrangebyscore 和 zdel来实现一个小demo。提前准备 安装redis, redis-go因为用的是macOS, 直接$ brew install redis$ go get
转载
2023-11-07 09:29:43
106阅读
.NET 环境中使用RabbitMQ 在企业应用系统领域,会面对不同系统之间的通信、集成与整合,尤其当面临异构系统时,这种分布式的调用与通信变得越发重要。其次,系统中一般会有很多对实时性要求不高的但是执行起来比较较耗时的地方,比如发送短信,邮件提醒,更新文章阅读计数,记录用户操作日志等等,如果实时处理的话,在用户访问量比较大的情况下,对系统压力比较大。面对这些问题,我们一般会将这些请求,
转载
2024-06-24 10:47:50
121阅读
这一次总结和分享用Redis实现分布式锁 与 实现任务队列 这两大强大的功能。先扯点个人观点,之前我看了一篇博文说博客园的文章大部分都是分享代码,博文里强调说分享思路比分享代码更重要(貌似大概是这个意思,若有误请谅解),但我觉得,分享思路固然重要,但有了思路,却没有实现的代码,那会让人觉得很浮夸的,在工作中的程序猿都知道,你去实现一个功能模块,一段代码,虽然你有了思路,但是实现的过程也是很耗时的,
转载
2024-08-11 08:22:58
84阅读
1、队列配置文件是config/queue.php(这里我默认配置即可):2、 创建迁移表(failed-table 、jobs、migrations)php artisan queue:tablephp artisan queue:failed-tablephp artisan migrateps:出现下面错误,修改对应表名即可ps:出现下面红色错误,修改如下图string(字...
原创
2022-01-17 16:12:43
771阅读
# 使用Redis定时队列实现延时任务调度
在实际的项目开发中,经常会遇到需要延时执行某些任务的场景,比如发送短信验证码、定时清理数据等。为了实现这样的延时任务调度,我们可以利用Redis的有序集合数据结构和其TTL(Time To Live)功能来实现一个简单的定时队列。
## Redis定时队列的基本原理
Redis定时队列的基本原理是利用有序集合(Sorted Set)数据结构的特性,
原创
2024-04-01 05:45:32
43阅读
# Laravel队列使用Redis
在现代 web 开发中,处理耗时的任务是一项常见的需求,例如发送电子邮件、生成报告或处理上传的文件。Laravel 提供了强大的队列功能,可以将这些任务异步化,从而提高应用的性能。本文将详细介绍如何在 Laravel 中使用 Redis 作为队列驱动,并提供代码示例。
## 环境准备
在使用 Laravel 队列与 Redis 之前,首先确保你已安装了
在这篇博文中,我将详细记录如何在 Go 中使用 Redis 队列的过程,包括环境配置、编译过程、参数调优、定制开发、性能对比和生态集成等方面。这将帮助开发者更好地理解和实现基于 Redis 的消息队列。
### 环境配置
在开始之前,我们需要设置我们的开发环境。以下是环境配置的整体流程。
```mermaid
flowchart TD
A[开始] --> B[安装Go]
B -
# 如何实现Spring Boot使用Redis队列
## 流程图
```mermaid
flowchart TD
A(创建Spring Boot项目) --> B(引入Redis依赖)
B --> C(配置Redis连接信息)
C --> D(实现消息生产者)
D --> E(实现消息消费者)
```
## 整体流程
| 步骤 | 描述
原创
2024-04-10 05:08:42
56阅读
在现代Web开发中,Laravel框架结合Redis队列是实现高效任务处理的一种常见模式。Redis提供了快速的数据存储和检索能力,而Laravel则提供了简洁的队列接口,使得任务调度和事件处理变得更加灵活。本文将探讨Laravel如何使用Redis队列,包含版本对比、迁移指南、兼容性处理、实战案例、排错指南和生态扩展等方面的详细信息。
## 版本对比与兼容性分析
### Laravel与Re