一、简介最近,在看一些消息中间件的内容,之前都没有好好学习一下消息中间件。本文将对RabbitMQ中五种常用的工作模式做一个简单的介绍和总结。RabbitMQ常用的工作模式有:简单队列模式、工作队列模式、发布订阅模式、路由模式、主题模式。本文参照RabbitMQ官网示例总结,详细可以到官网查看:ht ...
分类:
其他好文 时间:
2019-06-26 13:52:07
阅读次数:
123
定义:观察者模式(有时又被称为发布-订阅模式、模型-视图模式、源-收听者模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实作事件处理系统。 上面的定义当中 ...
分类:
其他好文 时间:
2019-06-25 16:45:24
阅读次数:
104
观察者模式是指函数自动观察数据对象的变化, 一旦对象有变化,函数就会自动执行。 它定义了一种一对多的依赖关系,我们用Proxy来实现一个简单的观察者模式(PS: 初学我们认为 观察者模式 == 发布订阅模式, 其实它们有点不同)。 例子: 打印结果:当age发生变化时:打印出 这样我们就简单的实现了 ...
分类:
其他好文 时间:
2019-06-17 14:09:21
阅读次数:
182
可靠性redis:没有相应的机制保证消息的可靠消费,如果发布者发布一条消息,而没有对应的订阅者的话,这条消息将丢失,不会存在内存中;rabbitmq:具有消息消费确认机制,如果发布一条消息,还没有消费者消费该队列,那么这条消息将一直存放在队列中,直到有消费者消费了该条消息,以此可以保证消息的可靠消费;实时性redis:实时性高,redis作为高效的缓存服务器,所有数据都存在在服务器中,所以它具有更
分类:
其他好文 时间:
2019-06-14 23:29:34
阅读次数:
130
在上一篇《ActiveMQ入门系列二:入门代码实例(点对点模式)》中提到了ActiveMQ中的两种模式:点对点模式(PTP)和发布/订阅模式(Pub & Sub),详细介绍了点对点模式并用代码实例进行说明,今天就介绍下发布/订阅模式。 一、理论基础 发布/订阅模式的工作示意图: 消息生产者将消息(发 ...
分类:
其他好文 时间:
2019-06-08 14:43:02
阅读次数:
98
一、基础知识 点对点模式:消息返送者发送消息,消息代理将其放入一个队列中,消息接收者从队列中获取消息内容,消息读取后就被移除队列;消息只有唯一的发送者和接受者,但比不是只能有一个接收者。 发布订阅模式: 二、简单使用 三、补充知识 四、最终建立自己的基于RabbitMQ的websocket集群 ...
分类:
其他好文 时间:
2019-05-27 23:39:44
阅读次数:
216
1、初步认识 观察者模式的定义: 在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。 大白话: 其实就是发布订阅模式,发布者发布信息,订阅者获取信息,订阅了就能收到信息,没订阅就收不到信息。 2、这个模式的结构图 3、可以看到,该模式包含四个角色 抽象被观 ...
分类:
编程语言 时间:
2019-05-26 21:17:02
阅读次数:
178
观察者模式——发布/订阅模式(publish/subscribe):定义了一种一对多的依赖关系,让多个观察者对象同时监听某一主题对象。这个主题对象在状态发生变化时,会通知所有观察者对象,使它们能够自动更新自己。 特点: 当一个对象的改变需要同时改变其他对象时。而且它不知道具体有多少对象有待改变时,应 ...
分类:
其他好文 时间:
2019-05-22 22:16:26
阅读次数:
132
原文:RabbitMQ指南之三:发布/订阅模式(Publish/Subscribe) 在上一章中,我们创建了一个工作队列,工作队列模式的设想是每一条消息只会被转发给一个消费者。本章将会讲解完全不一样的场景: 我们会把一个消息转发给多个消费者,这种模式称之为发布-订阅模式。 为了阐述这个模式,我们将会... ...
分类:
其他好文 时间:
2019-05-04 16:18:37
阅读次数:
194