首页 > TAG信息列表 > queueName

redis限流和滑动窗口限流

一、redis set nx实现限流   比如我们需要在10秒内限定20个请求,那么我们在setnx的时候可以设置过期时间为当前时间戳+10s,使用set nx 设置20个互不相同的key,当请求的setnx数量达到20时候即达到了限流效果。   当然这种做法的弊端是很多的,比如当统计1-10秒的时候,无法统计2-11秒之

.Net Core 5.x Api开发笔记 -- 消息队列RabbitMQ实现事件总线EventBus(二)

上一节说了事件总线 本节在消息队列中实现事件处理:.Net Core 5.x Api开发笔记 -- 消息队列RabbitMQ实现事件总线EventBus(一) 既然是消息队列,就需要有生产者和消费者(订阅) 1 public interface IMessageQueue 2 { 3 /// <summary> 4 /// 发布消息 5 /// </summa

rabbitmq生产与消费测试

消息生成者: <?php defined('BASEPATH') OR exit('No direct script access allowed'); /* require_once FCPATH . '/vendor/autoload.php'; use PhpAmqpLib\Connection\AMQPStreamConnection; use PhpAmqpLib\Message\AMQPMessage; */ /* s

Hadoop 设置任务执行的队列以及优先级和其他 配置

作业提交到的队列:mapreduce.job.queuename 作业优先级:mapreduce.job.priority Pig版本: SET mapreduce.job.queuename root.etl.distcp; SET mapreduce.job.priority HIGH; Hive版本: SET mapreduce.job.queuename=root.etl.distcp; SET mapreduce.job.priority=HIGH; MapReduc

04消息队列系列-RabbitMQ 利用MQ实现事物补偿

04消息队列系列-RabbitMQ 利用MQ实现事物补偿 原文链接 一、介绍 本篇使用SpringBoot整合RabbitMQ,为后续业务处理开发做铺垫。 二、整合实战 2.1 创建一个gradle项目,引入amqp依赖 implementation 'org.springframework.boot:spring-boot-starter-amqp' 2.2 在application.pr

如何保证消息不丢失

当发送者发送消息到 RabbitMQ 后,RabbitMQ 会将消息缓存在内存中,而如果此时 RabbitMQ 宕机了,默认情况下,内存中的 queue 和 message 都会全部丢失。 而如果我们需要保证消息不丢失,那么需要告诉 RabbitMQ 如何做;此时我们需要做的是:将 queue 和 message 都设置为持久化。 queue 持久化

.NET中RabbitMQ的使用

.NET中RabbitMQ的使用   概述   MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统。他遵循Mozilla Public License开源协议。AMQP(高级消息队列协议) 是一个异步消息传递所使用的应用层协

实现简单延迟队列和分布式延迟队列

  在我们的工作中,很多地方使用延迟队列,比如订单到期没有付款取消订单,制订一个提醒的任务等都需要延迟队列,那么我们需要实现延迟队列。我们本文的梗概如下,同学们可以选择性阅读。   1. 实现一个简单的延迟队列。   2.使用Redis的list实现分布式延迟队列。   3.使用Redis的z

动手造轮子:实现简单的 EventQueue

动手造轮子:实现简单的 EventQueue Intro 最近项目里有遇到一些并发的问题,想实现一个队列来将并发的请求一个一个串行处理,可以理解为使用消息队列处理并发问题,之前实现过一个简单的 EventBus,于是想在 EventBus 的基础上改造一下,加一个队列,改造成类似消息队列的处理模式。消息的处理