<一>表说明:
当在启动ActiveMQ时,先判断表是否存在,如果不存在,将去创建表,如下:
(1)ACTIVEMQ_ACKS:持久订阅者列表
1.CONTAINER:类型://主题
如:topic://basicInfo.topic
2.SUB_DEST:应该是描述,与1内容相同
3.CLIENT_ID:持久订阅者的标志ID,必须唯一
4.SUB_NAME:持久订阅者的名称.(durableSubscriptionName)
5.SELECTOR:消息选择器,consumer可以选择自己想要的
6.LAST_ACKED_ID:最后一次确认ID,这个字段存的该该订阅者最后一次收到的消息的ID
(2)ACTIVEMQ_LOCK:进行数据访问的排斥锁
1.ID:值为1
2.TIME:时间
3.BROKER_NAME:broker的名称
这个表似为集群使用,但现在ActiveMQ并不能共享数据库.
(3)ACTIVEMQ_MSGS:存储Queue和Topic消息的表
1.ID:消息的ID
2.CONTAINER: 类型://主题
如:queue://my.queue
Topic://basicInfo.topic
3.MSGID_PROD:发送消息者的标志
MSGID_PROD =ID:[computerName][…..]
注意computerName,不要使用中文,消息对象中会存储这个部分,解析connectID时会出现Bad String错误.
4.MSGID_SEQ:还不知用处
5.EXPIRATION:到期时间.
6.MSG:消息本身,Blob类型.
可以在JmsTemplate发送配置中,加上<property name=”timeToLive” value=”432000000”/>,5天的生命期,如果消息一直没有被处理,消息会被删除,但是表中会存在CONTAINER为queue: //ActiveMQ.DLQ的记录.也就是说,相当于将过期的消息发给了一个ActiveMQ自定义的删除队列..
<二>关于ActiveMQ的持久订阅消息删除操作
1.主题消息只有一条,所有订阅了这个消息的持久订阅者都要收到消息,只有所有订阅者收到消息并确认(Acknowledge)之后.才会删除.
说明:ActiveMQ支持批量(optimizeAcknowledge为true)确认,以提高性能
2.ActiveMQ执行删除Topic消息的cleanup()操作的时间间隔为5 minutes..
分享到:
相关推荐
以下是对这个主题的详细说明: 1. **配置ActiveMQ**: - 首先,我们需要在项目中引入ActiveMQ的相关依赖,这通常通过在`pom.xml`或`build.gradle`文件中添加依赖项来完成。 - 然后,配置ActiveMQ服务器的连接信息...
`readme.txt`可能包含了一些关于如何使用这些代码示例的说明,包括如何配置ActiveMQ服务器地址、如何创建消息以及如何启动和停止producer和consumer。开发者应按照这些指南进行操作,以便了解ActiveMQ在实际项目中的...
以下是对这个项目的关键知识点的详细说明: 1. **ActiveMQ**:ActiveMQ是Apache软件基金会下的开源消息代理,遵循JMS规范。它提供可靠的消息传递服务,支持多种协议如AMQP、STOMP等,使得应用程序能够异步处理消息...
这通常是开源软件的许可证文件,详细说明了软件的使用、复制、分发和修改的规则。对于开发者而言,了解并遵循这些规则是至关重要的,以确保合规使用ActiveMQ的运输组件。 在实际应用中,`activemq-transport-...
6. **编译libexpat**:在libexpat目录中,根据其提供的说明文档进行编译,通常也是通过`configure`和`nmake`或`msbuild`。 7. **编译ActiveMQ-CPP**:最后,进入ActiveMQ-CPP的源码目录,配置时需要指定apr、apr-...
### ESB产品说明:探索企业服务总线的关键组件 企业服务总线(ESB)作为现代企业集成架构的核心组成部分,其重要性不言而喻。本文将深入解析多个开源ESB产品的特性与功能,帮助读者更好地理解ESB在企业级应用中的...
6. `spring_jms.rar` 和 `activemq_jms.rar` - 这两个是JMS(Java消息服务)相关的压缩包,可能与后台数据传输有关,但不一定直接与textarea换行问题相关。 7. `Graber` - 这可能是一个抓取工具,用于从网络上获取...
1. **ActiveMQ Camel Tomcat 示例**:此示例展示了如何在运行于Apache Tomcat的应用程序中嵌入Apache ActiveMQ和Camel,提供了一个将消息系统与Web应用结合的例子。 2. **Aggregate 示例**:展示的是Camel 2.3中的...
7. **导入与运行**:描述中提到可以直接导入MyEclipse,说明该项目已经配置好了一切必要的依赖和设置,开发者只需要将整个项目导入MyEclipse IDE,然后配置合适的服务器,即可运行并测试Flex4、Spring和Hibernate的...
以下是对这些关键知识点的详细说明: 1. **分布式消息队列**: - **ActiveMQ** 和 **RocketMQ** 是两种广泛使用的分布式消息中间件。ActiveMQ 通常用于处理传统的企业级消息传递,而 RocketMQ 在阿里巴巴内部被大...
Camel提供了大量的内置组件,如HTTP、FTP、JDBC、ActiveMQ等,用于连接不同的系统和服务。这些组件极大地简化了集成工作,开发者无需关注底层通信细节。 5. **消息转换** 在数据传输过程中,Camel支持多种格式的...
- **Java消息服务 (JMS)**:如ActiveMQ,用于实现异步消息传递。 - **Java EE Beans (EJB)**:用于集成Java EE应用程序。 - **虚拟机 (VM)**:用于内部组件间的快速通信。 - **远程方法调用 (RMI)**:支持远程对象...
- **容器化部署**:使用Docker进行数据库(MySQL)、Redis以及ActiveMQ的消息中间件部署。 3. **工作流程**: - 用户通过各种登录方式接入系统,经过身份验证。 - 系统根据用户权限调用相应API,进行数据操作。 ...
ActiveMqUtil:ActiveMq操作工具类 BarCodeUtil:条形码操作工具类,包括生成和读取 CorsConfig:服务端防止跨域请求公共设置 DateUtil:时间处理工具类 DBConnection:jdbc工具类 FileOperater:文件处理工具...
要启动ActiveMQ服务,可以按照官方文档的说明执行相应的命令。一旦服务启动,就可以编写Java代码与之交互。通常,这涉及到创建一个ActiveMQ连接工厂,创建一个`Connection`,然后创建一个`Session`,接着创建`...
它将数据封装成消息,并通过消息通道发送到消息代理,如ActiveMQ、RabbitMQ或IBM WebSphere MQ。 2. **消费者**:消费者是接收和处理消息的应用程序。它可以是订阅者或接收者,根据消息传递模型的不同(发布/订阅或...
4. **docs**:包含了项目的文档,包括用户指南、API 文档和示例说明。 5. **src**:源代码目录,如果你需要查看或修改 Camel 的源代码,可以在这里找到。 6. **examples**:示例代码,帮助开发者了解如何使用 Apache...
数据库集群和库表散列 150 缓存 151 镜像 151 负载均衡 152 【网络】说说你对Http协议和Socket协议的理解 153 http协议 153 Tcp协议 154 【网络】HTTPS的工作原理说明HTTPS是安全的 155 【消息队列】为什么要使用...
- **MySQL数据库调优**:包括但不限于索引优化、查询优化、表结构优化等。 - **熟悉NoSQL数据库**:例如Redis,这是一种基于内存的键值存储系统,常用于缓存和高速数据访问场景。 ### 其他技术栈 - **消息队列**:...