ActiveMQ学习小结(2)

ActiveMQ学习小结(1)

文章目录

          • ActiveMQ安全机制
          • API

ActiveMQ安全机制

只有符合认证的用户才能进行发送和获取消息,
需要activemq.xml中添加安全验证配置(在broker标签中添加一个配置插件)

<plugins>
    <simpleAuthenticationPlugin>
      <users>
          <authenticationUser username="ff" password="ff" groups="admin,user"/>
      </users>
    </simpleAuthenticationPlugin>
</plugins>

生产者和消费者的用户密码都要和配置一致
在这里插入图片描述

API

Connection:

ConnectionFactory创建Connection连接,由Connection创建一个或多个Session
(Connection的传送默认是关闭,当一个程序执行完了必须关闭Connection)

Session:

是一个发送或接收消息的线程,可以用来创建MessageProducer、MessageConsumer和Message
(传Boolean参数设置事务化或非事务化,结束事务:提交(session.commit())或回滚session.rollback()

在这里插入图片描述
没有提交事务,则消息队列没数据在这里插入图片描述
签收模式(生产者和消费者要一致):

AUTO_ACKNOWLEDGE:生产者把消息发送给MQ,消费者向MQ中取消息,
				接收到消息后自动返回一个确认消息给MQ
(推荐)CLIENT_ACKNOWLEDGE:生产者把消息发送给MQ,消费者向MQ中取消息,
				接收到消息后手动调用acknowledge()方法返回一个确认消息给MQ					
DUPS_OK_ACKNOWLEDGE:生产者把消息发送给MQ,消费者向MQ中取消息,
				接收到了不会给MQ返回确认消息(减少了Session开销),
				如果多个用户同时取这个相同的消息,会导致消息重复

CLIENT_ACKNOWLEDGE签收模式(手动调用方法)
ActiveMQ学习小结(2)_第1张图片
MessageProducer:

由Session创建的对象,用来向Destination发送消息
传送模式:持久化(默认),非持久化(可以设置过期时间,单位毫秒,改善性能和减少存储的开销)
消息优先级:0-4普通(默认为4),5-9加急

消息过滤机制:ActiveMQ学习小结(3)

你可能感兴趣的:(JAVA学习)