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

免费的网站建设开发国家商标免费查询入口

免费的网站建设开发,国家商标免费查询入口,国内网如何看国外网站,下载应用市场前言 昨天写了一篇关于Java和RabbitMQ使用插件实现延迟队列功能的文章#xff0c;今天来讲下另外一种方式#xff0c;不需要RabbitMQ的插件。 前期准备#xff0c;需要安装好docker、docker-compose的运行环境。 需要安装RabbitMQ的可以看下面这篇文章。 如何使用PHP和R…前言 昨天写了一篇关于Java和RabbitMQ使用插件实现延迟队列功能的文章今天来讲下另外一种方式不需要RabbitMQ的插件。 前期准备需要安装好docker、docker-compose的运行环境。 需要安装RabbitMQ的可以看下面这篇文章。 如何使用PHP和RabbitMQ实现消息队列-CSDN博客 使用RabbitMQ插件实现延迟队列功能的文章可以查看下面的文章。 如何使用Java和RabbitMQ实现延迟队列-CSDN博客 一、编写代码 1、使用springboot框架快速搭建一个项目。 2、在 pom.xml 中添加 Spring Boot AMQP 的依赖内容如下。 dependency groupIdorg.springframework.boot/groupId artifactIdspring-boot-starter-amqp/artifactId /dependency 3、在 application.yml 中配置 RabbitMQ 的连接信息内容如下。 spring:rabbitmq:host: localhostport: 5672username: guestpassword: guest 4、在配置类中定义交换机、队列和绑定内容如下。 package com.ayzen.hello;import java.util.HashMap; import java.util.Map;import org.springframework.amqp.core.*; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class RabbitMqConfig {Bean public Queue delayQueue() { MapString, Object args new HashMap(); args.put(x-dead-letter-exchange, dlx_exchange); // 设置死信交换机 args.put(x-dead-letter-routing-key, dlx_key); // 设置死信路由 args.put(x-message-ttl, 5000); // 设置默认 TTL毫秒也可以动态设置 return new Queue(delay_queue, true, false, false, args); } Bean public Queue dlxQueue() { return new Queue(dlx_queue, true); } Bean public DirectExchange delayExchange() { return new DirectExchange(delay_exchange); } Bean public DirectExchange dlxExchange() { return new DirectExchange(dlx_exchange); } Bean public Binding binding(Queue delayQueue, DirectExchange delayExchange) { return BindingBuilder.bind(delayQueue).to(delayExchange).with(dlx_key); } Bean public Binding dlxBinding(Queue dlxQueue, DirectExchange dlxExchange) { return BindingBuilder.bind(dlxQueue).to(dlxExchange).with(dlx_key); }}5、创建一个生产者发送一个带有延迟属性的消息内容如下。 package com.ayzen.hello;import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.amqp.core.Message; import org.springframework.amqp.core.MessageBuilder; import org.springframework.amqp.core.MessageProperties; import org.springframework.amqp.rabbit.core.RabbitTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController RequestMapping(/test) public class TestController {final Logger logger LoggerFactory.getLogger(getClass());AutowiredRabbitTemplate rabbitTemplate;GetMapping(/send)public ResponseEntityObject send() {this.sendDelayMessage(sendDelayMessage, 5000);return ResponseEntity.ok(ResponseDto.success(ok));}private void sendDelayMessage(String message, long ttlInMilliseconds) {MessageProperties messageProperties new MessageProperties();messageProperties.setExpiration(Long.toString(ttlInMilliseconds));Message msg MessageBuilder.withBody(message.getBytes()).andProperties(messageProperties).build();rabbitTemplate.send(delay_exchange, dlx_key, msg);logger.info(send message to rabbitmq.);} }6、创建一个消息者监听接收队列中的消息内容如下。 package com.ayzen.learnjava.hello.service;import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.amqp.rabbit.annotation.RabbitListener; import org.springframework.stereotype.Component;Component public class TestService {final Logger logger LoggerFactory.getLogger(getClass());RabbitListener(queues dlx_queue)public void process(String message) {logger.info(process message from rabbitmq,message{}, message);} }7、至此测试项目代码已完成下一步将进行验证。 二、测试验证 1、启动服务。 2、调用生产者执行如下代码。 curl http://127.0.0.1:8080/test/send 3、查看日志正常情况会返回如下内容。 如上图所示在2024-04-08T10:23:40.47808:00接收到生产者的请求然后在2024-04-08T10:23:45.58708:00执行消费动作延迟5秒。 4、至此使用Java和RabbitMQ实现延迟队列的功能已验证完毕。 总结 用Java和RabbitMQ实现消息队列的延迟功能的另外一种方式其实依靠的是死信交换机主要有以下几个步骤。 1、配置死信交换机Dead-Letter-Exchange。 2、编写Java测试项目。 3、进行测试验证。 上面的代码只是做个简单的示例如果运用到实际的项目当中需要做进一步的优化。 最后因本人能力有限有什么不对的地方望各位大佬指出好让我改进多多包含谢谢大家。
http://www.zqtcl.cn/news/720771/

相关文章:

  • 深圳做网站哪个平台好一级消防工程师考试题型
  • 网站婚礼服务态网站建设论文网站设计有限公司是干嘛的
  • 邯郸网站建设效果好广西做网站的公司
  • 网站logo上传营销型网站制作方案
  • 小说网站静态模板站长工具seo综合查询adc
  • 北京响应式网站做logo那个网站
  • 如何申请免费网站空间刚察县wap网站建设公司
  • 哪里有网站推广软件免费推广seo策略方法
  • 阿里云备案网站 网站名称怎么写京icp备案查询
  • 网站开发岗位思维导图alexa排名
  • 自适应网站建设济南济南网站建设公司
  • 巴州网站建设库尔勒网站建设钟爱网络杭州微信网站制作
  • 52做网站南京市住房城乡建设门户网站
  • 网站开发精品课程贵阳市白云区官方网站
  • seo整站优化服务会计培训班一般收费多少
  • 批量网站访问检测怎么做好手机网站开发
  • 深圳网站建设公司哪家比较好shortcodes wordpress
  • 网站内链越多越好嘛可以做3d电影网站
  • 企业网站需求文档微商引流客源最快的方法
  • 交互式网站备案业务网站在线生成
  • 自建网站百度个人网站如何在百度上做推广
  • 如何安装wordpress模板竞价网站做seo
  • 做论坛网站如何赚钱电子商务营销推广
  • 想要自己做一个网站怎么做济宁百度网站建设
  • 海会网络建设网站wordpress刷不出图片
  • 一个人做商城网站网站推广的几个阶段
  • 做国学类网站合法吗html5教程pdf下载
  • 云南省文化馆网站建设二级域名分发平台
  • 网站版面布局结构图网站收录批量查询
  • 网站开发手机模拟器常州到丹阳