-
Docker install RabbitMQ 教程笔记
RabbitMQ
RabbitMQ is the most widely deployed open source message broker.
特性
Homebrew 安装
Mac 可以使用 Homebrew 安装 RabbitMQ
下载
brew update
brew install rabbitmq
rabbitmq 的脚本会被下载到 /usr/local/sbi...
2018-09-17 05:43:16 |
MQ
-
Docker 安装 Kafka
Docker Kafka
基础知识
Docker 入门介绍
Apacke-Kafka
实战
镜像选择
$ docker search kafka
NAME DESCRIPTION STARS OFFICIAL ...
2018-09-17 05:43:16 |
JMS
-
RabbitMQ 实战入门-06-远程调用
RPC
在第二个教程中,我们学习了如何使用工作队列在多个工作者之间分配耗时的任务。
但是,如果我们需要在远程计算机上运行一个函数并等待结果呢?
那是另一回事了。这种模式通常称为远程过程调用或RPC。
在本教程中,我们将使用RabbitMQ构建RPC系统: 客户机和可伸缩RPC服务器。
由于我们没有任何值得分发的耗时任务,我们将创建一个返回斐波那契数的虚拟RPC服务。
Client...
2018-09-17 05:43:16 |
MQ
-
RabbitMQ 实战入门-05-Topics
Topics
在前面的教程中,我们改进了日志系统。我们没有使用只能进行虚拟广播的扇出(fanout)交换,而是使用了直接(direct)交换,并获得了选择性地接收日志的可能性。
虽然使用 direct exchange 改进了我们的系统,但是它仍然有局限性——它不能基于多个标准进行路由。
在我们的日志系统中,我们可能不仅要根据严重性订阅日志,还要根据发出日志的源订阅日志。
您可能从 ...
2018-09-17 05:43:16 |
MQ
-
RabbitMQ 实战入门-04-路由
Routing
在前面的教程中,我们构建了一个简单的日志系统。我们能够向许多接收器广播日志消息。
在本教程中,我们将为它添加一个特性——我们将使订阅消息的一个子集成为可能。
例如,我们将能够仅将关键错误消息直接指向日志文件(以节省磁盘空间),同时仍然能够在控制台打印所有日志消息。
Bindings
前面的例子绑定如下:
channel.queueBind(queueName, E...
2018-09-17 05:43:16 |
MQ
-
RabbitMQ 实战入门-03-发布/订阅模式
Publish/Subscribe
在前面的教程中,我们创建了一个工作队列。工作队列后面的假设是,每个任务只交付给一个工作者。在这一部分中,我们将做一些完全不同的事情——我们将向多个消费者传递消息。这种模式称为“发布/订阅”。
为了说明这个模式,我们将构建一个简单的日志系统。它将由两个程序组成——第一个程序将发出日志消息,第二个程序将接收并打印它们。
在我们的日志系统中,接收程序的每个...
2018-09-17 05:43:16 |
MQ
-
RabbitMQ 实战入门-02-工作队列
Worker Queue
拓展阅读
竞争消费模式
工作队列
工作队列(又名:任务队列)背后的主要思想是避免立即执行占用大量资源的任务,并且必须等待它完成。相反,我们把任务安排在以后完成。我们将任务封装为消息并将其发送到队列。在后台运行的worker进程将弹出任务并最终执行作业。当您运行许多工作者时,任务将在他们之间共享。
这个概念在web应用程序中尤其有用,在web应用程序中,...
2018-09-17 05:43:16 |
MQ
-
RabbitMQ 实战入门-01-Hello World
准备工作
测试环境
jdk 1.8
mac 系统
前期准备
保证 maven 正确配置。
保证 rabbitmq 服务已经启动。
基本元素介绍
生产者
生产就是发送。发送消息的程序是生产者。
队列
队列是位于RabbitMQ内的邮箱的名称。
尽管消息流经RabbitMQ和您的应用程序,但它们只能存储在队列中。
队列只受主机的内存和磁盘限制,它本质上是一个大的消息缓冲...
2018-09-17 05:43:16 |
MQ