远程过程调用RPC

浏览: 2318 2017年08月27日
在第二篇博文中,我们已经了解到了如何使用工作队列来向多个消费者分散耗时任务。 但是付过我们需要在远程电脑上运行一个方法然后等待结果,该怎么办?这是不同的需求。这个模式通常叫做RPC。本文我们将使用RabbitMQ构建一个RPC系统:一个客户端和一个可扩展的RPC服务器端。由于我们没有任何...

主题

浏览: 2303 2017年08月25日
在上一篇博文中,我们进一步改良了日志系统。使用Direct类型的转换器,使得接收者有能力进行选择性的接收日志,,而非fanout那样,只能够无脑的转发,如果你还不了解,请阅读:RabbitMQ(四)发布/订阅。虽然使用Direct类型的转换器改进了日志系统。但它仍然有一定的局限性——不能根据多重...

路由选择

浏览: 2266 2017年08月23日
在前篇博文中,我们建立了一个简单的日志系统。可以广播消息给多个消费者。本篇博文,我们将添加新的特性——我们可以只订阅部分消息。比如:我们可以接收Error级别的消息写入文件。同时仍然可以在控制台打印所有日志。Bindings(绑定)在上一篇博客中我们已经使用过绑定。类似下面的代码:channel...

发布/订阅

浏览: 2184 2017年08月22日
在前面的教程中,我们创建了一个工作队列,都是假设一个任务只交给一个消费者。这次我们做一些完全不同的事儿——将消息发送给多个消费者。这种模式叫做“发布/订阅”。为了说明这个模式,我们将构建一个简单日志系统。它包含2段程序:第一个将发出日志消息,第二个接受并打印消息。如果在日志系统中每一个接受者(订...

消息应答与消息持久化

浏览: 2089 2017年08月21日
这个官网的第二个例子中的消息应答和消息持久化部分。我把它摘出来作为单独的一块儿来分享。Message acknowledgment(消息应答)执行一个任务可能需要花费几秒钟,你可能会担心如果一个消费者在执行任务过程中挂掉了。基于现在的代码,一旦RabbitMQ将消息分发给了消费者,就会从内存中删...

工作队列之消息分发机制

浏览: 2484 2017年08月20日
上一篇博文中简单介绍了一下RabbitMQ的基础知识,并写了一个经典语言入门程序——HelloWorld。本篇博文中我们将会创建一个工作队列用来在工作者(consumer)间分发耗时任务。同样是翻译的官网实例。工作队列在上一篇博文中,我们完成了一个简单的对声明的队列进行发送和接受消息程序。下面我...

RabbitMQ基础知识 HelloWorld

浏览: 2417 2017年08月19日
本文是简单介绍一下RabbitMQ,参考官网上的教程。同时加入了一些自己的理解。官网教程详见:“Hello World!”。引言你是否遇到过多个系统间需要通过定时任务来同步某些数据?你是否在为异构系统的不同进程间相互调用、通讯的问题而苦恼、挣扎?如果是,那么恭喜你,消息服务让你可以很轻松地解决这...

前言

浏览: 2319 2017年08月17日
超过35000的生产部署在全球的各个小RabbitMQ初创公司和大企业,RabbitMQ是最流行的开源消息代理。RabbitMQ是轻量级的,易于部署在内部部署和云。它支持多种通讯协议。RabbitMQ可以部署在分布式的联合配置以满足高规模、高可用性的要求。RabbitMQ可以运行在多个操作系统和...