原文来自 RabbitMQ 英文官网的教程(5.Topics),其示例代码采用了 .NET C# 语言. In the previous tutorial we improved our logging system. Instead of using a fanout exchange only capable of dummy broadcasting, we used a direct one, and gained a possibility of selectively receivi…
本文来自英文官网,其示例代码采用了 .NET C# 语言. <RabbitMQ Tutorial>第 1 章 简介(Introduction) RabbitMQ is a message broker: it accepts and forwards messages. You can think about it as a post office: when you put the mail that you want posting in a post box, you can be su…
Ext JS 6学习文档-第8章-主题和响应式设计 主题和响应式设计 本章重点在 ExtJS 应用的主题和响应式设计.主要有以下几点内容: SASS 介绍和入门 主题 响应式设计 SASS 介绍和入门 SASS (Syntactically Awesome Stylesheets) 是一个样式语言,当你使用 SASS 代替 CSS 来写样式,之后 SASS 将使用编译器编译成 CSS ,SASS 有更好的语法和一组特性使我们更容易编写样式.同时维护 SASS 代码比维护 CS 更容易.相比直接写…
源文来自 RabbitMQ 英文官网的教程(2.Work Queues),其示例代码采用了 .NET C# 语言. In the first tutorial we wrote programs to send and receive messages from a named queue. In this one we'll create a Work Queue that will be used to distribute time-consuming tasks among multip…
原文来自 RabbitMQ 英文官网的教程(3.Publish and Subscribe),其示例代码采用了 .NET C# 语言. In the previous tutorial we created a work queue. The assumption behind a work queue is that each task is delivered to exactly one worker. In this part we'll do something completely…
原文来自 RabbitMQ 英文官网的教程(4.Routing),其示例代码采用了 .NET C# 语言. In the previous tutorial we built a simple logging system. We were able to broadcast log messages to many receivers. 在之前的教程中,我们构建了一个简单的日志系统,我们可以广播日志消息给众多的接收人. In this tutorial we're going to add a…
原文来自 RabbitMQ 英文官网的教程(6.Remote procedure call - RPC),其示例代码采用了 .NET C# 语言. In the second tutorial we learned how to use Work Queues to distribute time-consuming tasks among multiple workers. 在第二篇教程中,我们学习了如何使用工作队列在多个工作单元之间分配耗时的任务. But what if we need t…
原文来自 RabbitMQ 英文官网的教程(1.Introduction),其示例代码采用了 .NET C# 语言. RabbitMQ is a message broker: it accepts and forwards messages. You can think about it as a post office: when you put the mail that you want posting in a post box, you can be sure that Mr. Po…
在 上篇博文 译:4.RabbitMQ 之Routing(路由) 中,我们改进了日志系统. 我们使用的是direct(直接交换),而不是使用只能进行虚拟广播的 fanout(扇出交换) ,并且有可能选择性地接收日志. 虽然使用direct(直接交换)改进了我们的系统,但它仍然有局限性 - 它不能基于多个标准进行路由. 在我们的日志系统中,我们可能不仅要根据严重性订阅日志,还要根据发出日志的源来订阅日志.您可能从syslog unix工具中了解这个概念,该 工具根据严重性(info / warn…
1.安装完 RabbitMQ 之后,我们可以点击  http://localhost:15672/#/  默认账号:guest  密码: guest  在这上面我们可以查看执行情况.管理连接.管理队列.管理通道.管理Exchange(交换所) 2.交换类型 交换类型分为:direct.topic.headers . fanout 四种,这一章我们先学习 fanout , fanout:大致如下图(类似广播),P是生产者,X是Exchange  ,P把消息发给 X 然后X会下发给所有与它关联的队列…
主题模式和路由模式很像 路由模式是精确匹配 主题模式是模糊匹配 依然先通过管理后台添加一个交换机. 生产者 public class Producer { private const string ExchangeName = "test_exchange_topic"; public static void Send() { //获取一个连接 IConnection connection = ConnectionHelper.GetConnection(); //从连接中获取一个通道…
接着上一章,使用exchange_type='direct'进行消息传递.这样消息会完全匹配后发送到对应的接收端.现在我们想干这样一件事: C1获取消息中包含:orange内容的消息,并且消息是由3个单词组成的. C2获取消息中包含:rabbit内容的消息,并且也是3个单词组成,同时,包含lazy开头的消息,这个消息长度>2 在下图中, quick.orange.rabbit:Q1 Q2都会收到 lazy.orange.elephant:Q1 Q2都会收到 quick.orange.fox :只…
RabbitMQ : 官网:https://www.rabbitmq.com/ GitHub:https://github.com/rabbitmq?q=rabbitmq 第一步安装: 点击  http://www.erlang.org/downloads  下载 erlang  安装. 点击 https://www.rabbitmq.com/download.html 进入下载页面选择版本下载. 菜单查找  RabbitMQ Service - start.exe 点击运行服务. 开始使用:…
一.安装RabbitMQ RabbitMQ是一套开源(MPL)的消息队列服务软件,是由 LShift 提供的一个 Advanced Message Queuing Protocol (AMQP) 的开源实现,由以高性能.健壮以及可伸缩性出名的 Erlang 写成. 所以我们要先安装Erlang Erlang:http://www.erlang.org/downloads RabbitMQ:https://www.rabbitmq.com/download.html 还可以启动一个后台插件,运行命…
1.简介 前面学习了有选择性的接收消息,但是却没有办法基于多个标准来接收消息.为了实现这个目的,接下来我们学习如何使用另一种更复杂的交换机 —— 主题交换机. 2.主题交换机 发送到主题交换机(topic exchange)的消息不可以携带随意什么样子的路由键(routing_key),它的路由键必须是一个由.分隔开的词语列表.这些单词随便是什么都可以,但是最好是跟携带它们的消息有关系的词汇.以下是几个推荐的例子:"stock.usd.nyse", "nyse.vmw&quo…
1. 主题(Topics): fanout模式只能进行简单的广播,direct模式虽然在过滤上进行了一定的提升,但是不能支持复杂的条件, 比如我们的日志消息,现在不仅要知道消息级别,也要知道消息来源.在这样的复杂需求下,我们需要使用 主题交换. 2. 主题交换: 发送主题交换的的routing_key不是任意的,必须遵循如下格式:使用.分隔的一些字.通常这些字用来表示 消息的某些特性,如:"stock.usd.nyse", "nyse.vmw", "qui…
<RabbitMQ Tutorial>译文 第 1 章 简介 <RabbitMQ Tutorial>译文 第 2 章 工作队列 <RabbitMQ Tutorial>译文 第 3 章 发布和订阅 <RabbitMQ Tutorial>译文 第 4 章 路由 <RabbitMQ Tutorial>译文 第 5 章 主题 <RabbitMQ Tutorial>译文 第 6 章 远程过程调用(RPC)…
先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难,可以通过邮件列表 联系我们. 主题 (使用 .NET 客户端) 在 教程[4] 中,我们改进了我们日志系统.我们用direct交换器替换了只能呆滞广播消息的fanout交换器,从而可以有选择性的接收日志. 虽然使用direct交换器改进了我们的系统,但它仍然有局限性 - 不能基于多个标准进行路由.…
前言 RabbitMQ六种队列模式-简单队列RabbitMQ六种队列模式-工作队列RabbitMQ六种队列模式-发布订阅RabbitMQ六种队列模式-路由模式RabbitMQ六种队列模式-主题模式 [本文] 从前面的几篇我们依次经历了 exchange 模式从 fanout > direct 的转变过程,在 fanout 时,我们只能进行简单的广播,对应类型比较单一,使用 direct 后,消费者则可以进行一定程度的选择,但是,direct 还是有局限性,路由不支持多个条件. 怎么讲呢? dir…
本課主題 SQLAlchemy - Core SQLAlchemy - ORM Paramiko 介紹和操作 上下文操作应用 初探堡垒机 SQLAlchemy - Core 连接 URL 通过 create_engine 方法创建 MySQL 数据库的连接,create_engine("url") 接受一个 URL 连接: >>> MySQL-Python: mysql+mysqldb://<user>:<password>@<host&…
RabbitMQ 官网:http://www.rabbitmq.com/ 原创博文 1.揭开消息中间件RabbitMQ的神秘面纱 2. RabbitMQ 服务器之下载安装 3. RabbitMQ 之修炼手册上卷 4. RabbitMQ 之修炼手册中卷 RabbitMQ 官网翻译教程 Rabbit MQ 有以下多种实现方式: 这些教程介绍了使用RabbitMQ创建消息传递应用程序的基础知识.您需要安装RabbitMQ服务器才能完成教程 RabbitMQ  Java 集成实现 这种方式是通过引入Ra…
概述 MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法.RabbitMQ是一个在AMQP基础上完整的,可复用的企业消息系统.他遵循Mozilla Public License开源协议.AMQP(高级消息队列协议) 是一个异步消息传递所使用的应用层协议规范,作为线路层协议,而不是API(例如JMS),AMQP 客户端能够无视消息的来源任意发送和接受信息.AMQP的原始用途只是为金融界提供一个可以彼此协作的消息协议,而现在的目标则是为通用消息队列架构提供通用…
1. 历史 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现.AMQP 的出现其实也是应了广大人民群众的需求,虽然在同步消息通讯的世界里有很多公开标准(如 COBAR的 IIOP ,或者是 SOAP 等),但是在异步消息处理中却不是这样,只有大企业有一些商业实现(如微软的 MSMQ ,IBM 的 Websphere MQ 等),因此,在 2006 年的 6 月,Cisco .Redhat.iMatix 等联合制定了 AMQP 的公开标…
客户端javascript涵盖在本系列的第二部分第10章,主要讲解javascript是如何在web浏览器中实现的,这些章节介绍了大量的脚本宿主对象,这些对象可以表示浏览器窗口.文档树的内容.这些章节同样涵盖重要的web应用所需要的网络编程API.本地存储和检索数据.画图等.主要包含内容有以下章节: web浏览器中的javascript / window对象 /  脚本化文档 /  脚本化css / 事件处理 / 校本化http / jQuery类库 / 客户端存储  /  多媒体和图形编程 /…
在这一章中,将向您介绍一个全新的技术,成为BDR.双向复制(BDR),在PostgreSQL的世界里,它绝对是一颗冉冉升起的新星.在不久的将来,许多新的东西将会被看到,并且人们可以期待一个蓬勃发展的项目. 本章将是关于如下这些主题: •理解 BDR 复制概念 •安装 BDR •设置一个简单的集群 •修改集群和故障转移 •了解 BDR 的性能 在挖掘所有的技术细节之前,理解 BDR 方面的基本技术是非常重要的.           理解 BDR 复制概念 过去,在9.0被引进之前,人们不得不使用S…
Ext JS 入门指南 前言 本来我是打算自己写一个系列的 ExtJS 6 学习笔记的,因为 ExtJS 6 目前的中文学习资料还很少.google 搜索资料时找到了一本国外牛人写的关于 ExtJS 6 的电子书 [Ext JS 6 By Example].这份资料在 PACKT 上卖 35.99 刀的,当然了万能的 google 还是帮我下载到了 PDF 文档.大概看了一下,讲的很详细,例子也比较简单,容易理解,现我准备利用工作之余翻译这份文档,为自己学习加深理解,也希望能帮助更多的人学习.…
先决条件 本教程假定RabbitMQ已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难,可以通过邮件列表联系我们. 1.介绍 RabbitMQ是一个消息代理:它接受并转发消息.您可以把它想象成一个邮局:当您将需要寄出的邮件投递到邮箱,您可以确定的是邮差先生最终会将邮件送给您的收件人.在这个比喻中,RabbitMQ就是一个邮箱,也可以理解成邮局和邮递员. RabbitMQ和邮局的主要区别在于…
先决条件 本教程假定RabbitMQ已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难,可以通过邮件列表联系我们. 1.工作队列 (使用.NET客户端) 在第一篇教程中,我们编写了两个程序,用于从一个指定的队列发送和接收消息.在本文中,我们将创建一个工作队列,用于在多个工作线程间分发耗时的任务. 工作队列(又名:任务队列)背后的主要想法是避免立即执行资源密集型.且必须等待其完成的任务.相反…
先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难,可以通过邮件列表 联系我们. 在第 教程[2] 中,我们学习了如何使用工作队列在多个工作单元之间分配耗时任务. 但是如果我们想要运行一个在远程计算机上的函数并等待其结果呢?这将是另外一回事了.这种模式通常被称为 远程过程调用 或 RPC . 在本篇教程中,我们将使用 RabbitMQ 构建一个 RP…
先决条件 本教程假定 RabbitMQ 已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需要调整连接设置. 从哪里获得帮助 如果您在阅读本教程时遇到困难,可以通过邮件列表 联系我们. 路由 (使用.NET客户端) 在 教程[3] 中,我们构建了一个简单的日志系统,可以向多个接收者广播消息. 在本教程中,我们会为日志系统再添加一个特性,使其可以只订阅消息的一个子集.例如,将所有日志消息打印到 控制台,同时只会将严重错误消息写入日志文件(保存到磁盘空间)…