ActiveMQ做消息队列拦截功能

  • 操作步骤

操作步骤

  1. 首先先到ActiveMQ官网下载最新的最稳定的版本 http://activemq.apache.org/activemq-5158-release.html 我下载的是Windows版本的
  2. 直接解压双击运行bin/win64/activemq.bat . 弹出黑窗口 (黑窗口不要关) 访问localhost:8161 如果出现页面 说明运行成功 登录密码为 admin /admin
  3. 测试向本地的ActiveMQ服务器发送消息
     //1.创建连接工厂  默认接收消息的端口为61616ConnectionFactory connectionFactory=new ActiveMQConnectionFactory("tcp://localhost:61616");//2.创建连接Connection connection = connectionFactory.createConnection();//3.启动连接connection.start();//4.获取session(会话对象)  参数1:是否启动事务  参数2:消息确认方式Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);//5.创建主题对象 发送的主题列Topic topic = session.createTopic("test");//6.创建消息生产者对象MessageProducer producer = session.createProducer(topic);//7.创建消息对象(文本消息)TextMessage textMessage = session.createTextMessage("这是一条消息");//8.发送消息producer.send(textMessage);//9.关闭资源producer.close();session.close();connection.close();
  1. 查看监控页面 消息已经发送成功
  2. 默认的消息服务器是没有权限校验的 也就是说 谁都可以对消息队列服务器中的消息进行发送和监听 只要知道消息队列服务器的url
  3. 要想做权限校验 就需要对消息队列服务器做开发 来进行 权限的拦截 而ActiveMQ本身就支持本身做插件开发的
  4. 编写权限拦截器插件 请根据自己的需求编写校验
/*** 因为不同的需求有着不同的校验方式  * @author GEP* ActiveMQ消息拦截器*/
public  class  ActivemqFilter extends BrokerFilter {private static final Logger logger = LoggerFactory.getLogger(ActivemqFilter.class);private final String PRODUCER_IDENTTIFICATION = "producer";private final String CUSTOMER_IDENTTIFICATION="customer";/*** 消息生产者对应的标识*/private final String PRODUCER_NUMBER = "1";/*** 消息消费者对应的标识*/private final String CUSTOMER_NUMBER = "2";/*** 超级管理员对应的标识*/private final String SUPER_NUMBER = "0";//用户 这里是封装成实体对象private  User user ;//数据库连接  将用户的信息存到数据库方便进行管理private JdbcTemplate jdbcTemplate;public ActivemqFilter(Broker next,JdbcTemplate jdbcTemplate) {super(next);this.jdbcTemplate = jdbcTemplate

ActiveMQ做消息队列拦截功能相关推荐

  1. PHP中使用ActiveMQ实现消息队列

    2019独角兽企业重金招聘Python工程师标准>>> PHP中使用ActiveMQ实现消息队列前面我们已经学了如何部署ActiveMQ, 我们知道通过ActiveMQ的一个管理后台 ...

  2. 【springboot】【redis】springboot+redis实现发布订阅功能,实现redis的消息队列的功能...

    springboot+redis实现发布订阅功能,实现redis的消息队列的功能 参考:https://www.cnblogs.com/cx987514451/p/9529611.html 思考一个问 ...

  3. 使用Redis Stream来做消息队列和在Asp.Net Core中的实现

    Redis - Wikipedia 写在前面 我一直以来使用redis的时候,很多低烈度需求(并发要求不是很高)需要用到消息队列的时候,在项目本身已经使用了Redis的情况下都想直接用Redis来做消 ...

  4. php redis查看队列长度,php redis做消息队列解决流量削峰常用的5个指令

    线上的秒杀等业务场景,需要类似的解决方案,需要平安度过同时抢购带来的流量峰值的问题.如果此时还用mysql做消息队列是什么容易挂掉的,如果死轻量级的秒杀我们完全可以用redis来应对. 削峰从本质上来 ...

  5. 使用redis做消息队列mq的总结

    总结 目前使用redis做消息队列的的方式有3中,list,      publish/subscribe,       stream list做mq的总结 使用方法 1. 生产者可以 lpush 写 ...

  6. Redis做消息队列,香吗?

    来自:架构师修行之路 菜菜哥,我刚做完了一个订单系统,感觉很简单呀 说说看,大量的订单状态怎么处理的? 我设计的时候可是考虑了这一点,所以用了异步处理,采用了MQ 那用的什么MQ呢,透露一下呗 我用的 ...

  7. 程序员过关斩将--redis做消息队列,香吗?

    菜菜哥,我刚做完了一个订单系统,感觉很简单呀 说说看,大量的订单状态怎么处理的? 我设计的时候可是考虑了这一点,所以用了异步处理,采用了MQ 那用的什么MQ呢,透露一下呗 我用的redis做的MQ,很 ...

  8. redis 怎么做消息队列 适合的场景

    redis也可以作为消息队列来使用,而且具备搭建简单,使用简易快捷的特点 适合的场景: 1.数据场景简单且单一 2.对数据的丢失是有容忍度的 3.对消费数据的正确消费是有容忍度的 目前实现redis消 ...

  9. Spring整合ActiveMQ完成消息队列MQ编程

    <–start–> 第一步:新建一个maven,将工程命名为activeMQ_spring.在pom.xml文件中导入相关jar包. ①spring开发和测试相关的jar包: spring ...

最新文章

  1. 这八个步骤,Python让你轻松爬取B站弹幕,网友看了都说6
  2. 使用MyEclipse开发Java EE应用:用XDoclet创建EJB 2 Session Bean项目(四)
  3. python用pywin32库来隐藏windows文件
  4. java调用存储过程分页
  5. libgdx和Kotlin –类[2D平台原型]
  6. 信息学奥赛C++语言:枪声问题
  7. Android应用视觉效果设计技巧
  8. Wget下载网页与镜像网站
  9. springboot+nodejs+vue+Elementui网上商城购物系统
  10. Java数组排序:Java sort()方法
  11. while用法小简介(涉及EOF用法)
  12. 解决征信中心密码控件无法安装
  13. Bundle Adjustment简述
  14. Unity中使用模板测试模拟Mask组件效果
  15. 解决WARNING: Ignoring invalid distribution -pencv-python (c:\users\lhw\anaconda3\lib\site-packages)
  16. MySql 查询语句替换换行符
  17. 浪潮信息m6服务器性能,展现强劲性能,浪潮M6服务器为什么能刷新SPEC多项记录...
  18. 《Introducing the Child Process Debugging Power Tool》学习
  19. python中文注释与单行注释_Python单行注释方法
  20. Arduino I2C任意更换SDA SCL GPIO引脚

热门文章

  1. pid 以单摆系统为例
  2. MATLAB学习笔记:求导数
  3. BigDecimal转String
  4. linux防火墙_硬件防火墙和软件防火墙的区别有哪些?
  5. 项目中钱(money)的类型应该用哪个?
  6. 【Hadoop综合实践】手机卖场大数据综合项目分析
  7. 【Keras之父】DL用于Text
  8. P1379 八数码难题 题解(双向宽搜)
  9. 缓慢的http拒绝服务攻击
  10. 计算机主机开机滴滴叫,电脑滴滴滴的响而且开不了机怎么办|电脑开机滴滴滴响的解决方法...