当前位置: 首页 > news >正文

金数字网站建设建设银行网站的目的是什么意思

金数字网站建设,建设银行网站的目的是什么意思,庆元县住房和城乡建设局网站,wordpress培训插件目录 一、引言 二、延迟插件安装 2.1. 下载插件 2.2. 安装插件 2.3. 确认插件是否生效 三、核心代码 四、运行效果 五、总结 一、引言 上一章我们讲到通过死信队列组合消息过期时间来实现延迟消息#xff0c;但相对而言这并不是比较好的方式。它的代码实现相对来说比…目录 一、引言 二、延迟插件安装 2.1. 下载插件 2.2. 安装插件  2.3. 确认插件是否生效 三、核心代码 四、运行效果 五、总结  一、引言 上一章我们讲到通过死信队列组合消息过期时间来实现延迟消息但相对而言这并不是比较好的方式。它的代码实现相对来说比较繁琐而且关键是RabbitMQ提供死信队列的初衷并不是让我们用来发送延迟消息的而是为了作为兜底方案来接收没有消费的死信的以便于定位问题。那么本章节我们就开始讲解通过延迟消息插件来实现延迟消息。 延迟消息插件可以将普通交换机改造为支持延迟消息功能的交换机当消息投递到交换机后可以暂存一定时间到期后再投递到队列。 这个插件可以将普通交换机改造为支持延迟消息功能的交换机当消息投递到交换机后可以暂存一定时间到期后再投递到队列。 发送消息时需要通过消息头x-delay来设置过期时间 二、延迟插件安装 在Mac上安装RabbitMQ延迟消息插件时确保你已经安装了RabbitMQ并且它正在运行操作步骤如下Linux安装步骤和方法类似此处不做赘述 2.1. 下载插件 从RabbitMQ官方GitHub仓库或者通过以下命令直接下载我这里是最新版本 wget https://github.com/rabbitmq/rabbitmq-delayed-message-exchange/releases/download/v4.0.2/rabbitmq_delayed_message_exchange-4.0.2.ez 2.2. 安装插件  将下载的插件拷贝到RabbitMQ的plugins目录使用RabbitMQ插件管理命令安装下载的插件 sudo rabbitmq-plugins enable rabbitmq_delayed_message_exchange 如果你的RabbitMQ是以Docker容器的方式运行的你可以将插件下载步骤和安装步骤合并为一个Docker命令例如 docker run -d --name rabbitmq -e RABBITMQ_PLUGINSrabbitmq_delayed_message_exchange rabbitmq:3-management 这个命令会启动一个带有RabbitMQ管理插件的容器并且会自动安装延迟消息插件。 2.3. 确认插件是否生效 安装成功后RabbitMQ的浏览器界面上exchange交换机在创建时Type多了x-delayed-message选项。 请注意具体的RabbitMQ版本和插件版本可能会更新因此请根据实际情况下载相应的版本。  三、核心代码 package com.example.publisher;import jakarta.annotation.Resource; import lombok.extern.slf4j.Slf4j; import org.junit.jupiter.api.Test; import org.springframework.amqp.core.Message; import org.springframework.amqp.core.MessageBuilder; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.boot.test.context.SpringBootTest;import java.nio.charset.StandardCharsets;/*** 生产者*/ Slf4j SpringBootTest class PublisherApplicationTests {Resourceprivate RabbitTemplate rabbitTemplate;Testvoid test() {String content 生活不易所以保持足够的努力对自己要有信心积极地去面对工作生活的挑战;Message message MessageBuilder.withBody(content.getBytes(StandardCharsets.UTF_8)).build();message.getMessageProperties().setDelayLong(10000L);rabbitTemplate.convertAndSend(delay.direct,delay, message);} }package com.example.consumer;import lombok.extern.slf4j.Slf4j; import org.springframework.amqp.core.Message; import org.springframework.amqp.rabbit.annotation.Exchange; import org.springframework.amqp.rabbit.annotation.Queue; import org.springframework.amqp.rabbit.annotation.QueueBinding; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component;import java.nio.charset.StandardCharsets;/*** 消费者*/ Slf4j Component public class SimpleListener {RabbitListener(bindings QueueBinding(value Queue(name delay.queue, durable true),exchange Exchange(name delay.direct, delayed true),key delay))public void listener1(Message message) throws Exception {String msg new String(message.getBody(), StandardCharsets.UTF_8); ;System.out.println(延迟消息人生是个不断攀登的过程【 msg 】);} }四、运行效果 我们可以看到消息在延时10秒后消费 五、总结  虽然延迟插件让我们在消息延迟发送的代码实现上已经非常简洁但是在使用延迟消息中还有一个问题就是延迟消息比较损耗性能我们在RabbitMQ上使用延迟消息时它的内部就会维护一个时钟每当我们定义一个新的延迟消息它就会创建一个新的时钟。如果一个任务的延迟时间特别长比如一小时甚至一天将非常耗性能。所以延迟消息比较适用于延迟的时间比较短的场景比如10分钟未支付取消订单。 但是我们如果直接设定10分钟后发送延迟消息也不是最优解我们将在下一章对延迟消息做近一步的优化
http://www.dnsts.com.cn/news/25392.html

相关文章:

  • 珠海百度seo河北网站seo
  • 东莞网站优化排名系统公司简介范文(共10篇)
  • 搜索大全引擎入口网站黄页88可信吗
  • 网站做著作权厦门软件开发工资一般多少
  • 流量网站建设教程做ppt用什么软件最好
  • 苏州营销型网站制作装修案例的app
  • 网站建设的论文可以做外链的音乐网站
  • 做全国家电维修网站到哪里做青岛建设集团建兴工程有限公司
  • 做网站比较好的数字物联网小程序开发
  • 扬州网站建设购物网站建设项目策划书
  • 私人网站制作 个人使用什么平台打广告比较好免费的
  • 网络平台推广seo联盟
  • 免费网站域名空间申请哈尔滨建设局网站首页
  • 学做网站论坛会员怎么样wordpress架站
  • 政务网站建设及安全网站建设接活
  • 旅游网站开发与设计论文岳阳市城市建设投资公司网站
  • 非洲外贸网站学网站开发难吗
  • 淄博网站制作高端企业退休做认证进哪个网站
  • 深圳市建设局官方网站刚刚刚刚刚刚刚刚刚刚刚刚刚刚刚
  • 网站开发费用摊销时间平面设计现在怎么样
  • 网上接单做衣服哪个网站页面设计培训机构
  • 在线制作网站免费用wordpress仿一个网站模板下载
  • 汕头网站建设公司哪个好十大垂直电商平台
  • 沈阳网站制作聚艺科技下载 做网站的原型文件
  • 网站的积分系统怎么做wap建站程序哪个好
  • 网站建设服务费属于哪个大类旅游网站开发研究现状
  • 做怎么样的自己的网站建设网站需要申请
  • 网站建设竞标书国内什么网站用asp.net
  • 中国城乡住房建设厅网站公司基本资料模板
  • 对网站政务建设的建议团购模板网站