RabbitMQ
华科易迅
这个作者很懒,什么都没留下…
展开
-
RabbitMQ集群原理
RabbitMQ是Erlang语言和平台实现的,其充分利用Erlang分布特性,实现集群功能非常容易。RabbitMQ集群分为普通模式和镜像模式,普通模式下存在单点故障,当队列创建时绑定的节点故障时,服务整体不可用。镜像队列(Mirrored queue)机制解决了RabbitMQ单点问题,保证了高可用(Highly Available)。重点讨论镜像模式RabbitMQ集群。通过镜像机制,RabbitMQ将队列放置于集群中的多个节点上,消息的生产和消费都会在节点间同步。镜像队列包含一个master和多原创 2020-06-23 11:55:15 · 2353 阅读 · 1 评论 -
RabbitMQ Linux平台安装
Rabbitmq是消息中间件,它是Erlang语言开发的,充分地利用erlang的分布式特性,通常以集群方式部署,主要提供消息的接受和发送,实现各微服务之间的消息异步。1、安装依赖包yum install -y *epel* gcc-c++ unixODBC unixODBC-devel openssl-devel ncurses-devel xz 2、下载并安装Erlang可以从官网下载https://www.erlang.org/downloads或者从云盘下载链接:https://pan原创 2020-06-21 12:07:13 · 777 阅读 · 0 评论 -
RabbitMQ Fanout类型交换机
Fanout类型交换机忽略Routing Key,它将消息传递到所有与它绑定的队列上。消息生产者package com.test.fanout;import com.rabbitmq.client.*;import java.io.IOException;import java.lang.String;import java.lang.System;import java.uti...原创 2018-11-04 14:55:30 · 510 阅读 · 0 评论 -
RabbitMQ Topic类型交换机
RabbitMQ消息服务中Topic类型交换机根据通配符路由消息,*代表一个单词,#代表代表0或多个单词。生产者package com.test.topic2;import com.rabbitmq.client.Channel;import com.rabbitmq.client.Connection;import com.rabbitmq.client.ConnectionFact...原创 2018-11-04 14:52:40 · 721 阅读 · 0 评论 -
RabbitMQ 消息传递Java对象
通过消息服务器传递Java对象,Java类必须实现序列化接口,可以把Java对象转化为字节数组,从消费者或生产者传递到另外一个JVM中,一定需要两个JVM共享这个类,比如是UserInfo类。1、定义序列化的类UserInfo2、消费者中,实例化UserInfo的对象,并取出它的字节数组3、编写生产者UserInfo.javapackage com.test.rfc;pu...原创 2018-11-04 14:46:43 · 5593 阅读 · 0 评论 -
RabbitMQ RFC同步调用
RabbitMQ RFC同步调用是使用了两个异步调用完成的,生产者调用消费者的同时,自己也作为消费者等待某一队列的返回消息,消费者接受到生产者的消息同时,也作为消息发送者发送一消息给生产者。参考下图:调用流程如下:其他的消息服务器实现同步调用也是类似的原理,比如ActiveMQ。下面编写消费者类Server生产者Client代码启动一命令行,将当前目录转移到项目所在的目录...原创 2018-11-04 14:40:18 · 619 阅读 · 0 评论 -
RabbitMQ Linux安装
RabbitMQ在Linux上安装,需要很多依赖库,如何不能解决依赖库德版本问题,可能会比较麻烦,最好结合Yum进行安装,我这里使用的Linux环境是64位CentOS6.2 ,使用Yum源是阿里云的CentOS 6wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo还单独...原创 2018-11-04 14:33:00 · 337 阅读 · 0 评论 -
RabbitMQ 客户端控制消息
1.生产者发送消息,消费者接受消息并回执发送回执有两种方法一、使用channel.basicConsume(queue,true,callback);二、使用channel.basicAck(tag,true/false);2.通过channel.basicConsume向服务器发送回执,删除服务上的消息3.不发送回执,服务器的消息一直存在4.消费者拒绝接受消息,并抛弃服务器的...原创 2018-11-04 14:28:32 · 2091 阅读 · 0 评论 -
RabbitMQ 第一个程序
RabbitMQ消息服务器主要解决应用程序之间异步消息传输问题,传统的MQ分为点对点和主题与订阅,RabbitMQ使用Exchange(交换机)实现更加灵活的消息传递。前面介绍过几个概念,RoutingKey,Binding,Queue,Exchange,Binding将Exchange和Queue绑定在一起,Exchange是交换机,Queue是消息队列,Exchange的四种类型决定如何...原创 2018-11-04 14:16:55 · 248 阅读 · 0 评论 -
RabbitMQ Window环境安装
RabbitMQ环境的安装分别介绍在Window和Linux下两个环境的安装过程.Window安装RabbitMQ,RabbitMQ安装文件是64位的,所以Window系统必须是64位的.安装RabbitMQ之前必须首先安装Erlang开发语言.软件下载地址:https://pan.baidu.com/s/1mi7porm首先安装opt_win64_20.2.exe ERlang语言...原创 2018-11-04 14:05:08 · 446 阅读 · 0 评论 -
RabbitMQ介绍
MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。消息服务器RabbitMQ的应用场景异步处理:例如短信,邮件通知等场景,用户不需要时时等待...原创 2018-11-04 13:57:25 · 504 阅读 · 0 评论