zoukankan      html  css  js  c++  java
  • SpringBoot集成ArtemisMQ,设置动态消息类型

    SpringBoot项目集成ArtemisMQ,那么想动态的更换消息类型,怎么办呢?

    通过设置org.springframework.jms.support.destination.JmsDestinationAccessor#setDestinationResolver 方法进行设置目的地解析器

    • 将之设置为 BeanFactoryDestinationResolver
       
    • 默认提供的org.springframework.jms.support.destination.DynamicDestinationResolver 动态解析目的地实现类,只能在启动配置文件配置属性:spring.jms.pub-sub-domain = true/false ;全局使用的属性值
    • 第三种方式就是重写 org.springframework.jms.support.destination.DynamicDestinationResolver 的解析提供的目的地名称的核心代码了,根据自己提供的名称的规则解析为指定的 队列或者订阅 模式

    ArtemisMQ的性能调优章节,有一句

     所以,需要自己进行缓存目标对象(例如,把目的地对象成为Bean单例组件)

    其中著名一句话,是Spring Jms是反模式

    如果要更改 JmsTemplate.destinationResolver属性,则指需在IOC容器中注册一个 DestinationResolver 接口的实现类即可

    
    
    
    
    

    ArtemisMQ 官方文档

     
    复制请注明出处,在世界中挣扎的灰太狼
  • 相关阅读:
    BD String
    1114
    1083
    1084
    1108
    1087
    1145
    1217
    1164
    反射
  • 原文地址:https://www.cnblogs.com/XingXiaoMeng/p/13849951.html
Copyright © 2011-2022 走看看