最近公司做了一个以信息安全为主的项目,其中有一个业务需求就是,项目定时监控操作用户的行为,对于一些违规操作严重的行为,以发送邮件(FoxMail)的形式进行邮件告警,可能是多人,也可能是一个人,第一次是以单人的形式,,直接在业务层需要告警的地方发送邮件即可,可是后边需求变更了,对于某些告警邮件可能会发送多人,这其中可能就会有阻塞发邮件的可能,直到把所有邮件发送完毕后再继续做下边的业务,领导说这样会影响用户体验,发邮件的时候用户一直处于等待状态,不能干别的事情。最后研究说用消息队列,当有需要发送邮件告警的时候,就向队列中添加一个标识消息,ActiveMQ通过监听器的形式,实时监听队列里边的小时,收到消息后,判断是不是需要发送告警的标识,是的话就自行就行发送邮件!这是就研究的消息队列ActiveMQ,下边就是具体内容:
分类:
编程语言 时间:
2019-07-15 14:45:45
阅读次数:
155
package javalearn; import java.util.LinkedList; import java.util.Queue; public class ProducerConsumer { private static final int MAX = 5; ////////////... ...
分类:
编程语言 时间:
2019-07-15 12:01:51
阅读次数:
117
一、生产者配置 二、消费者配置 三、其它重要配置 ...
分类:
编程语言 时间:
2019-07-15 10:43:48
阅读次数:
277
Python并发编程之多进程 一、什么是进程 进程:正在进行的一个过程或者说一个任务。而负责执行任务则是cpu。 进程是资源分配的基本单位 进程有:代码段,数据段,进程控制块(PCB)组成 二、进程与程序的区别 程序仅仅只是一堆代码而已,而进程指的是程序的运行过程。 举例: 想象一位有一手好厨艺的计 ...
分类:
编程语言 时间:
2019-07-15 01:38:59
阅读次数:
113
什么是消息队列 消息队列,即MQ,Message Queue。 消息队列是典型的:生产者、消费者模型。生产者不断向消息队列中生产消息,消费者不断的从队列中获取消息。因为消息的生产和消费都是异步的,而且只关心消息的发送和接收,没有业务逻辑的侵入,这样就实现了生产者和消费者的解耦。 结合前面所说的问题: ...
分类:
其他好文 时间:
2019-07-13 20:05:30
阅读次数:
134
生产者消费者模型 模型就是要解决某个问题的固定方法或套路 要解决的问题 生产者:泛指生产数据的一方 消费者:泛指处理数据的一方 双方的处理速度不一致,导致总有一方会在等待 解决问题的方法 1. 先将双方解开耦合,让不同的进程负责不同的任务 2. 提供一个共享的容器如队列,用来平衡双方的能力,用队列是 ...
分类:
编程语言 时间:
2019-07-13 17:28:25
阅读次数:
145
多线程访问同一个资源进行读写操作,就很容易出一些问题(比如我们常见的读者写者,生产者消费者模型)所以我们会选择对他们设置信号量或者加锁,来限制同一个时刻只有一个线程对某个对象进行操作。 多线程是一个蛮复杂的工作,锁加多了就算是看伪代码有的时候脑子都转不过来,所以不要随便加锁(如果对自己的脑子没太多自 ...
分类:
编程语言 时间:
2019-07-09 15:16:59
阅读次数:
150
消息队列是典型的 生产者 消费者模型 ,生产者只管发送消息,消费者只管监听队列取出消息,没有业务逻辑的侵入,实现了生产者和消费者的 解耦 ,这篇博客主要从如下几个方面整理相关RabbitMQ的知识点 1. 消息中间件在项目中的使用场景 2. RabbitMQ常见的 五种消息模型 3. 如何 避免消息 ...
分类:
其他好文 时间:
2019-07-08 13:46:46
阅读次数:
60
一、简单的RabbitMQ示例 生产者 消费者 二、RabbitMQ命令行工具 三、rabbitmq持久化 队列持久化 消息持久化 四、消息调度 在消费者中定义 五、广播模式 fanout:所有bind到此exchange的queue都可以接受消息 订阅/发布 生成者 消费者 direct:通过ro ...
分类:
编程语言 时间:
2019-07-07 12:57:25
阅读次数:
119
[TOC] 生产者消费者模型 生产者消费者模型 在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题。该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度。 为什么要使用生产者和消费者模式 在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发当中, ...
分类:
编程语言 时间:
2019-07-05 00:26:58
阅读次数:
141