首页 文章
  • 11 votes
     answers
     views

    Spring AMQP v1.4.2 - 网络故障时兔子重新连接问题

    我正在测试Spring AMQP v1.4.2中的以下场景,并且在网络中断后无法重新连接: 启动spring应用程序,该应用程序使用rabbit:listener-container和rabbit:connection-factory(详细配置如下)异步使用消息 . 日志显示应用程序正在成功接收消息 . 通过删除Rabbit服务器上的入站网络流量,使RabbitMQ对应用程序不可见: ...
  • 1 votes
     answers
     views

    如果经纪人崩溃,spring amqp会停止消费者线程

    我试图在代理失败的情况下关闭整个amqp设置而不关闭上下文/应用程序 . 我从一个监听器中尝试了以下内容,我在其中捕获与代理失败的连接错误相关的事件, connectionFactory.clearConnectionListeners(); connectionFactory.stop(); connectionFactory.destroy(); myContainer.stop(); ...
  • 0 votes
     answers
     views

    Spring Amqp:将SimpleRoutingConnectionFactory与@RabbitListener混合使用

    我有一个应用程序,它将侦听多个队列,这些队列在不同的vhost上声明 . 我使用SimpleRoutingConnectionFactory来存储connectionFactoryMap,我希望用@RabbitListener设置我的监听器 . 根据Spring AMQP doc: 从1.4版开始,您可以在SimpleMessageListenerContainer中配置路由连接工厂 . 在这种...
  • 1 votes
     answers
     views

    在Spring-AMQP中演出403s

    我需要在不同的运行时间内使用可变数量的消费者线程来保证消费者独占性,这些消费者线程使用固定数量的队列(其中队列的数量远大于消费者的队列数量) . 我的一般想法是,我让每个消费者线程尝试 Build 一个独占连接来清除队列,如果它在给定时间段内没有从该队列接收消息,则将其重定向到另一个队列 . 即使队列被临时清除,它也有可能在将来再次接收消息,因此不能简单地忘记队列 - 相反,消费者应该稍后返回它 ...
  • 9 votes
     answers
     views

    如何在Spring AMQP中使用Ack或Nack

    我是Spring AMQP的新手 . 我有一个应用程序,它是一个 生产环境 者向另一个消费者的应用程序发送消息 . 消费者收到消息后,我们将对数据进行验证 . If the data is proper we have to ACK and message should be removed from the Queue. If the data is improper we have to NA...
  • 0 votes
     answers
     views

    RabbitMQ和Spring amqp重试,不会阻止消费者

    我正在使用RabbitMQ和Spring amqp,我宁愿不丢失消息 . 通过使用指数退避策略进行重试,我可能会阻止我的消费者,他们可以处理他们可以处理的消息 . 我想在几天内通过指数退避策略重试失败的消息,但我不希望消费者阻塞几天,我希望它继续处理其他消息 . 我知道我们可以使用ActiveMQ(Retrying messages at some point in the future (Act...
  • 2 votes
     answers
     views

    Spring-AMQP:不支持工作或任务队列

    使用Spring-AMQP抽象API,您如何实现工作或任务队列?我有一个 生产环境 者和多个 Worker 消费者 . 消费者从队列中取出下一个项目并对其进行处理 . 直接使用RabbitMQ客户端API时支持此功能,但我在Spring-AMQP中看不到任何支持 . 我在这里错过了什么吗?有没有其他方法来实现工作队列?
  • 5 votes
     answers
     views

    Spring AMQP RabbitMq中的预定/延迟消息传递

    我很难在Spring AMQP / Rabbit MQ中找到预定/延迟消息的方法 .经过大量的搜索仍然无法在Spring AMQP中做到这一点 . 有人可以告诉我如何在Spring AMQP中做 x-delay .如果消费者方面发生了一些异常,我想延迟消息 . RabbitMQ说要添加x-delay并安装我已经完成的插件,但仍然会立即收到消息而没有任何延迟 我收到了消息收到<(正文:'[...
  • 1 votes
     answers
     views

    消息消息时,Spring AMQP中的线程实现

    我有一个应用程序使用Spring AMQP消耗RabbitMQ的消息 . 我必须在使用者中实现Threads来处理请求 . 如果我的线程池可用,我正在使用线程消费该消息我将处理该消息 . 我有一个问题,当所有线程都忙时会发生什么 . 我没有线程来处理它 . 消息是否会从RabbitMQ中消耗掉?它会等到我的线程池可用 . 怎么用spring amqp处理这个? Is there any thr...
  • 2 votes
     answers
     views

    Rabbitmq:在代理重启后,Unacked消息不会消失

    我们观察了RabbitMQ的以下行为,并试图了解它是否正确以及如何解决它 . 场景: (持久)消息被传递到持久队列中 (单个)消费者(Spring-AMQP)接收消息并开始处理=>消息从READY转到UNACK 现在代理已关闭=>客户端正确报告"Channel shutdown" 消费者完成处理,但由于代理仍处于停机状态,因此无法确认消息 Bro...
  • 0 votes
     answers
     views

    如何从任何类型的交换支持的队列中消耗?

    我正在编写一个消息监听器,需要接受来自命名Queue的消息 . 使用spring-amqp,我想知道是否可以配置此监听器,以便无论其支持交换类型是什么,都将通过队列消耗消息 . 例如: <rabbit:admin id="amqpAdmin" connection-factory="reconciliationAmqpConnectionFactory&quot...
  • 6 votes
     answers
     views

    Spring AMQP RabbitMQ实现优先级队列

    谷歌待了几天,我相信我完全迷失了 . 我想实现一种有大约3个队列的优先级队列: 高优先级队列(每日),需要先进行处理 . 中间优先级队列(每周),如果队列#1中没有项目将处理 . (这个队列中的消息是好的,它根本不会处理) 低优先级队列(每月),如果队列#1和#2中没有项目将处理 . (这个队列中的消息是好的,它根本不会处理) 最初,我有以下流程,让消费者使用来自所有三个队列的...
  • 2 votes
     answers
     views

    Java Spring Stomp AMQP

    我有三个项目: Javascript SockJS STOMP客户端 Spring-boot STOMP endpoints 和AMQP 用于测试的Spring-boot AMQP(RabbitListener)客户端 我正在使用RabbitMQ消息代理(Stomp插件)并正常配置 amqp 和 stomp endpoints ..当我使用 RabbitTemplate 和第三个...
  • 2 votes
     answers
     views

    Storm使用Spring AMQP从RabbitMq读取消息

    我想从RabbitMq队列中消耗我的Storm Spout中的消息 . 现在,我们使用Spring AMQP异步发送和接收来自RabbitMq的消息 . Spring AMQP提供机制(创建监听器或使用注释@RabbitListner)从队列中读取消息 . 问题是我可以让一个监听器从队列中读取消息 . 但是如何将此消息发送到在Storm集群上运行的Storm Spout? 拓扑将启动一个集群,但在...
  • 3 votes
     answers
     views

    Spring amqp不向队列发布消息,而是向Exchange发布消息

    我正在尝试使用多个队列测试和测试RabbitMQ的spring-amqp,因此我为每个队列创建了兔子模板并使用它来发送消息 . 发送的消息成功,我可以在交换机中看到一条消息,但我在队列中看不到任何内容 . 我猜这是非常小的设置,但无法弄明白 . 这是我的applicationContext.xml <bean id="banchmarkConnectionFactory"...
  • 0 votes
     answers
     views

    对RabbitMQ队列的否定确认使用Spring AMQP重新排队消息

    我有一个应用程序,它使用spring AMQP来消费并向其他应用程序生成消息 . 我有一个场景,其中发生了一些异常我需要重新排队回RabbitMQ . 对于一些我需要忽略的例外(基本上我需要忽略不需要重新排队的消息) 目前在下面的代码中,我已将配置设置为 factory.setDefaultRequeueRejected(false); 但我的要求是动态拒绝某些消息并重新排队回RabbitMQ以获...
  • 2 votes
     answers
     views

    连接被阻止时,spring-amqp无法正常工作

    我正在使用spring-amqp 1.4.4并且队列中包含太多消息并且它在水印内存之上,如果在send方法之后调用RabbitTemplate接收方法则不响应 . 它无限期地等待 . 在spring xml中,我将listen-timeout =“10”设置为rabbit:template . 如果我不打电话给send方法,只是打电话给它接收就行了 . 怎么了? template.convertA...
  • 1 votes
     answers
     views

    记录Spring AMQP的消息侦听器抛出的异常

    我有一个使用异步使用者处理消息的应用程序(通过@RabbitListener) . 在此使用者方法中,由于我定义的策略而发生异常并且消息被重新排队: spring: rabbitmq: listener: simple: default-requeue-rejected: false r...
  • 1 votes
     answers
     views

    队列恢复后重新声明绑定

    我目前正在开发一个rabbit-amqp实现项目,并使用spring-rabbit以编程方式设置我的所有队列,绑定和交换 . 我正在尝试重新创建队列,如果它被删除,并在参考文档中找到以下内容: 3.14侦听器容器队列版本1.3引入了许多用于处理侦听器容器中的多个队列的改进 . 必须将容器配置为侦听至少一个队列;之前的情况也是如此,但现在可以在运行时添加和删除队列 . 当处理完任何预先获取的消息时...
  • -2 votes
     answers
     views

    Classnotfoundexception导致SimpleMessagelistenerContainer停止

    我发现当监听器抛出classnotfoundexception时,simplemessagelistenercontainer将停止并且不适用于序列消息 . 我设置了defaultrejectqueue为false,我是否还要捕获所有异常并重新抛出amqprejectrequeueexception? 2015-11-17 14:15:59.808 ERROR 27121 --- [cTaskE...
  • 4 votes
     answers
     views

    Spring Boot AMQP接收器

    我正在创建一个简单的Spring Boot应用程序,我希望接收发送到AMQP(Rabbit)交换机(来自其他应用程序)的消息 . 我收到一个错误,指出我要接收的队列不存在 . 当我看到http://localhost:15672/#/queues时,我可以看到它确实存在;我在开始这个应用程序之前删除它 . 我在另一篇文章中读到,如果队列不存在,则必须声明RabbitAdmin,并使用declare...
  • 0 votes
     answers
     views

    Spring-amqp:使用匿名独占队列时的异常

    我有一系列tomcat / spring应用程序,需要使用几个不同的扇出交换,从几个不同服务器的单个实例向多个客户端发送消息 . 每个服务器实例都有自己的一组交换 . 交换机由服务器声明,并由每个客户端生成并绑定到这些交换机的匿名队列 . 我正在使用匿名队列,因为我事先并不知道会有多少消费者,当然我不能将多个消费者绑定到一个命名队列而不会破坏扇出交换的性质 . 在客户端,我在日志中遇到了大量异常,...
  • 0 votes
     answers
     views

    spring amqp中的CannotLoadBeanClassException

    Spring 天amqp我很新 . 我正在尝试运行示例应用程序,并且发送方代码正在成功运行但是侦听器代码引发了错误 . 请帮忙 . 请在下面的链接中找到代码 - https://www.journaldev.com/11713/spring-amqp-rabbitmq-example 抛出的错误 - 异常在线程“主要” org.springframework.beans.factory.Can...
  • 52 votes
     answers
     views

    RabbitMQ / AMQP - MicroService架构中的最佳实践队列/主题设计[已关闭]

    我们正在考虑为我们的微服务基础设施(编排)引入基于AMQP的方法 . 我们提供多种服务,比如客户服务,用户服务,文章服务等 . 我们计划将RabbitMQ作为我们的中央消息系统 . 我正在寻找有关主题/队列等系统设计的最佳实践 . 一种选择是为我们系统中可能发生的每个事件创建一个消息队列,例如: user-service.user.deleted user-service.user.updated...
  • 1 votes
     answers
     views

    自动从队列中删除消息一旦使用Spring AMQP消耗

    我有2个应用程序使用RabbitMQ交换数据 . 我使用Spring AMQP实现了这一点 . 我有一个场景,一旦消费者消费消息可能会在处理时遇到异常 . 如果有任何异常,我打算登录数据库 . 一旦消息到达消费者,我必须显式地从队列中删除消息,无论是成功处理还是遇到错误 . 如何强制从队列中删除消息,否则如果我的应用程序无法处理它将会在那里? 下面是我的Listener代码 @RabbitLi...
  • 1 votes
     answers
     views

    @RabbitListener用于多个类中的相同队列

    我想知道在Spring AMQP中是否有可能从多个类中的同一队列接收消息,具体取决于有效负载类型 . 我知道在类中使用@RabbitListener注释然后将@RabbitHandler放在方法上,但我想在保留单个队列的同时将多个类中的消息处理的复杂性分开 . 目前正在使用的版本:Spring AMQP v2.0.3以及RabbitMQ .
  • 0 votes
     answers
     views

    Spring Rabbit:Acknowledge mode = Manual with RetryTemplate不会从队列中删除消息

    我正在执行以下步骤: MessageListener从队列Q1接收消息 验证消息 如果验证失败,请调用channel.basicReject()并将其移至死信队列 否则,假设电子邮件服务器失败 . 我将channel.basicReject()调用requeue为true并抛出异常 . 它将重试模板并在maxAttempts之后恢复(RepublishMessageRecovere...
  • 2 votes
     answers
     views

    Spring-amqp听不到原因退出 . (原因:尝试使用封闭渠道)

    我们使用rabbitmq作为消息传递中间件运行许多服务 . 当服务正在运行时,我们看到服务停止收听请求,要求我们重新启动服务以使其再次运行 . 我们在同一个JVM(Oracle Weblogic应用程序服务器)上运行多个服务,但并非所有服务都停止,通常只有一个,但并不总是相同 . 它似乎与负载无关,因为服务具有非常不同的负载配置文件 . 我们设置了心跳协议,但它没有解决问题 . 由于问题也发生在我...
  • 1 votes
     answers
     views

    异步Spring Remoting(AMQP)客户端

    我有一个实现API网关模式的Spring Boot Web应用程序,其中嵌入式Tomcat实例接收请求并将它们转发到许多微服务(也是Spring Boot应用程序) . 我正在使用Spring Remoting with AMQP来 Build 通信,并且对这些服务的一些调用可能需要一段时间才能完成(最昂贵的一个需要,比如1-2秒) . 我已经在这些微服务上成功配置了侦听器并发性,一切运行顺利,但...
  • 0 votes
     answers
     views

    RabbitMQ的消费者并没有加起来

    我们有一个Java应用程序,它使用Spring AMQP从rabbitmq获取消息 . 对于某些队列,消费者数量没有增加,导致消息传递速度变慢 . 例如即使最大消费者设置为50,消费者的数量在大多数情况下仍然为6,负载9000条消息 . 但是,其他队列不是这种情况 . 我......其他队列的消费者数量达到35 . 我们使用SimpleMessageListenerContainer的setMax...

热门问题