0 0

ActiveMQ在心跳间隔期会丢消息?5

请教大家一个问题,我用MQTT客户端连接ACTIVEMQ,有个奇怪的现象,我服务端配置了持久到MYSQL,发布和订阅都是持久模式,如果在心跳间隔期间客户端网络异常,这时ACTIVEMQ是不知道客户端掉线了的,发布到相应TOPIC的消息客户端在重新连接上后是收不到的,如果服务端在心跳超时后还没有收到客户端发来的心跳则断开了相应的连接,这时发送到相应TOPIC的消息会被服务端做持久化处理,客户端重连上后是可以收到的,现在很郁闷,在做移动即时通讯,移动网络不稳定是常态,这样会导致消息严重丢失,到底问题出在哪?
2014年8月26日 13:37

1个答案 按时间排序 按投票排序

0 0

你好,我也和你碰到过一样的问题,当时我用的是activemq版服务端代码来发布消息,发现android客户端不管怎么订阅的qos是多少,收到的消息qos总是0。
后来我换成mqtt版的服务端代码发布消息,就没有这个问题了。希望能帮到你!

2014年11月21日 11:55

相关推荐

    ActiveMQ消息中间件面试专题1

    ActiveMQ 通过心跳包检测客户端状态,但长时间发送消息可能导致客户端在等待服务器响应时关闭连接,从而丢失消息。为防止这种情况,可以使用持久化消息、及时处理非持久化消息,或启用事务。事务模式确保消息在...

    ActiveMQ消息过期时间设置和自动清除解决方案

    本文档详细介绍了在Apache ActiveMQ 5.15.3版本中如何进行消息过期时间的设置,以及如何配置自动清除机制,特别是针对死信队列的处理方式。 #### 1. 消息过期设置 ##### 参数详解 - **Message 过期则客户端不能...

    Spring 实现远程访问详解——jms和activemq

    把它应用到实际的业务需求中的话我们可以在特定的时候利用生产者生成一消息,并进行发送,对应的消费者在接收到对应的消息后去完成对应的业务逻辑。 JMS 支持两种消息传递模型: 点对点(point-to-point,简称 PTP)...

    ActiveMQ队列消息过期时间设置和自动清除解决方案.docx

    在使用 ActiveMQ 时,消息过期时间设置和自动清除是一个非常重要的问题。本文将介绍 ActiveMQ 队列消息过期时间设置和自动清除的解决方案。 一、消息过期时间设置 在 ActiveMQ 中,可以通过设置时间戳插件来实现...

    activemq-cpp发送接收消息,消息过滤器

    在本文中,我们将深入探讨如何使用`activemq-cpp`库在C++环境中发送和接收消息,并利用消息过滤器来实现特定的消息处理。`activemq-cpp`是Apache ActiveMQ的一个C++客户端,它提供了与ActiveMQ服务器进行交互的能力...

    activeMQ收发工具.rar

    ActiveMQ是中国最流行的开源消息中间件之一,由Apache软件基金会开发。它基于Java Message Service (JMS) 规范,提供了可靠的消息传递功能,适用于分布式系统中的应用间通信。本压缩包“activeMQ收发工具.rar”包含...

    activemq

    它为 C++ 开发者提供了访问 ActiveMQ 的接口,从而使开发者能够在 C++ 应用程序中轻松地集成消息队列服务。 - **Winkeemq-cpp**:这是一个基于 ActiveMQ-CPP 封装的高级 API 库,它简化了许多常见的初始化和清理工作...

    springboot整合activemq 消费者 ACK手动确认 &消息重发

    springboot整合 activeMq 消费者 消费接收消息 包含队列模式点对点发 以及 主题模式一对多 这是消费者的demo consumer 。 里面有消息重发机制,手动确认ACK模式。 配合 producer 生产者demo使用。

    activeMQ发送消息返回消息

    ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它基于Java消息服务(JMS)规范,用于在分布式系统中提供高效、可靠的消息传递。在ActiveMQ中,发送和接收消息是一个核心功能,它允许应用程序之间进行异步...

    springboot集成activemq实现消息接收demo

    本教程将详细介绍如何在Spring Boot项目中集成ActiveMQ,实现消息接收的Demo。 首先,我们需要在Spring Boot项目中引入ActiveMQ的相关依赖。在`pom.xml`文件中添加以下Maven依赖: ```xml <groupId>org.spring...

    SpringBoot+ActiveMq+MQTT实现消息的发送和接收

    在本文中,我们将深入探讨如何使用SpringBoot、ActiveMQ和MQTT来实现消息的发送与接收。这是一个典型的分布式系统中的消息通信场景,其中SpringBoot作为应用程序框架,ActiveMQ作为消息中间件,而MQTT(Message ...

    使用WebSocket协议接收ActiveMQ消息

    例如,ActiveMQ允许设置WebSocket连接的心跳间隔,以确保连接的活跃性。另外,如果WebSocket连接意外断开,客户端需要有一个重连策略,以恢复与ActiveMQ的通信。 至于压缩包文件"activemq_ws_接收消息",其中可能...

    ActiveMQ使用mqtt协议的实现发布消息的三种方式.txt

    java中使用消息中间件ActiveMQ的MQTT协议发布消息使用fusesource,fusesource提供三种方式实现发布消息的方式,分别是阻塞式(BlockingConnection)、回调式(CallbackConnection)和Future样式(FutureConnection)

    SpringBoot快速玩转ActiveMQ消息队列

    在本教程中,我们将专注于如何在SpringBoot框架下快速集成并使用ActiveMQ,一个广泛使用的开源消息代理。这个教程是基于JDK8环境的。 **一、ActiveMQ简介** ActiveMQ是Apache软件基金会开发的一款开源的消息中间件...

    简单的activemq点对点的同步消息模型

    ActiveMQ是Apache软件基金会开发的一款开源消息中间件,它遵循开放消息传递协议(Open Message Broker Protocol,即AMQP)和Java消息服务(Java Message Service,JMS)规范,用于实现应用程序之间的异步通信和数据...

    Spring+ActiveMQ消息队列+前台接收消息

    在本教程中,我们将探讨如何整合Spring框架与ActiveMQ消息队列,实现前后台的消息传递。这有助于提升系统的可扩展性和响应速度,降低不同组件之间的耦合度。 首先,Spring框架是Java企业级应用开发的事实标准,它...

    7道消息队列ActiveMQ面试题!

    在面试中,面试官可能会问到关于ActiveMQ的一些基础和深入的问题,比如ActiveMQ的特性、消息传递机制、故障处理、消息持久化、性能调优以及消息消费等方面的知识。 1. ActiveMQ的核心概念和功能 ActiveMQ提供了多种...

    用C#实现的ActiveMQ发布/订阅消息传送

    ActiveMQ是Apache软件基金会开发的一个开源消息传递平台,支持多种协议,包括NMS(.NET Messaging Service),它是专门为.NET平台设计的ActiveMQ接口。 首先,我们需要了解发布/订阅模式。在这种模式下,生产者...

    ActiveMQ 使用Ajax 收发消息实战

    ActiveMQ是Apache软件基金会的一个项目,提供了一个开源的消息代理,支持多种消息协议,如OpenWire、STOMP、AMQP和MQTT等。Ajax(Asynchronous JavaScript and XML)则是一种在不刷新整个网页的情况下更新部分网页...

    springboot整合activeMq的使用,队列,主题,消息手动确认,重发机制

    如果处理失败,可以选择不发送确认,那么消息会在超时后被重新投递。 总结,通过Spring Boot与ActiveMQ的整合,我们可以轻松实现消息队列和主题的创建、消息的手动确认以及重发机制,从而构建健壮的分布式系统。在...

Global site tag (gtag.js) - Google Analytics