首页 > 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 /// </summarabbitmq生产与消费测试
消息生成者: <?php defined('BASEPATH') OR exit('No direct script access allowed'); /* require_once FCPATH . '/vendor/autoload.php'; use PhpAmqpLib\Connection\AMQPStreamConnection; use PhpAmqpLib\Message\AMQPMessage; */ /* sHadoop 设置任务执行的队列以及优先级和其他 配置
作业提交到的队列: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; MapReduc04消息队列系列-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 的基础上改造一下,加一个队列,改造成类似消息队列的处理模式。消息的处理