最近闲得无聊想着写一个聚合的MQ控制条,一个项目管理ActiveMq,RocketMq,RabbitMq, Kafka,Mqtt,正好还能用开源项目申请IDEA的开源授权码
当前项目采用Springboot Sqlite Vue3 Axios实现,所有对于ActiveMq的操作均通过ActiveMq自带的jolokia API来实现,如果需要使用本项目管理ActiveMq的话,需要开启8161端口。
  • 如果jar包和activemq不在同一台服务器的划,需要变更jetty.xml内容
<bean id="jettyPort" class="org.apache.activemq.web.WebConsolePort" init-method="start">
     <!-- the default port number for the web console -->
    <property name="host" value="0.0.0.0"/>
    <property name="port" value="8161"/>
</bean>

1. DashBoard

控制台创建连接,保存到嵌入式数据库Sqlite之中,并通过不同的client创建连接,后续通过sql内的数据获取相关信息,创建完链接点击详情即可管理对应的MQ,当前只实现了ActiveMq。

在这里插入图片描述

2. Home

展示ActiveMq的基本信息

在这里插入图片描述

3. Queues

管理ActiveMq的Queue信息,支持查询,创建,删除,发送消息等操作,基本操作与ActiveMq官方提供的一致

在输入框内输入 QueueName 点击 Create 即可创建Queue

  1. 查询创建Queue

在这里插入图片描述

  1. SendTo
这里有一个需要注意的,Cron String 是从分钟开始的,只有五个参数 例如 0/1 * * * ?每分钟执行一次,且需要开启Scheduled支持,具体看下边的章节即可

在这里插入图片描述

  1. Browse

在这里插入图片描述

4. Topic

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

5. Subscribers

上方的ElForm可以创建Offline Durable Topic Subscribers

在这里插入图片描述

6. Connectors

查询当前的ActiveMq 连接,点击ClientId可以查询connector的详细信息

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

7. Network

这个需要在ActiveMq的配置中开启network才行,变更 conf/active.xml,类似集群
<broker>
    <networkConnectors>
        <networkConnector 
              uri="static:(tcp://192.168.159.129:61616,tcp://192.168.159.130:61616)"
              name="networkConnector"
              duplex="true"
              decreaseNetworkConsumerPriority="true"
              networkTTL="2"/>
    </networkConnectors>
</broker?

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

8. Scheduled

需要ActiveMq开始Scheduled支持, 同样还是activemq.xml
<broker 
        xmlns="http://activemq.apache.org/schema/core" 
        brokerName="localhost"
        dataDirectory="${activemq.data}" 
        schedulerSupport="true">
</broker>

在这里插入图片描述

9 SendTo

发送消息

在这里插入图片描述


Super Mario
1 声望0 粉丝

引用和评论

0 条评论