rabbitmq集群

rabbitMQ队列使用及常用命令

房东的猫 提交于 2020-01-24 00:47:01
一、RabbitMQ常用命令 启动监控管理器: rabbitmq-plugins enable rabbitmq_management 关闭监控管理器: rabbitmq-plugins disable rabbitmq_management 启动rabbitmq: rabbitmq-service start 关闭rabbitmq: rabbitmq-service stop 查看所有的队列: rabbitmqctl list_queues 清除所有的队列: rabbitmqctl reset 关闭应用: rabbitmqctl stop_app 启动应用: rabbitmqctl start_app 用户和权限设置(后面用处) 添加用户: rabbitmqctl add_user username password 分配角色: rabbitmqctl set_user_tags username administrator 新增虚拟主机: rabbitmqctl add_vhost vhost_name 将新虚拟主机授权给新用户: rabbitmqctl set_permissions -p vhost_name username '.*' '.*' '.*' 角色说明 none 最小权限角色 management 管理员角色 policymaker 决策者

redis安装等

偶尔善良 提交于 2020-01-24 00:37:38
redis安装 https://github.com/MSOpenTech/redis/releases 选择64位 打开安装位置输入redis-server.exe redis.windows.conf (或者放到环境变量),后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的 这时候另启一个 cmd 窗口,原来的不要关闭,不然就无法访问服务端了。 切换到 redis 目录下运行:redis-cli.exe -h 127.0.0.1 -p 6379 设置获取键值对 set myKey abc get myKey 输入 info 命令可看到该redis的版本 学习链接: https://zhuanlan.zhihu.com/p/52931220 SSM理论: SSM框架,是Spring+SpringMVC+Mybatis的缩写,是继承SSH框架之后,目前比较主流的Java EE企业级框架,适用于搭建各种大型的企业级的应用系统 RabbitMQ RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发。RabbitMQ据说具有良好的性能和时效性,同时还能够非常好的支持集群和负载部署,非常适合在较大规模的分布式系统中使用。 来源: CSDN

RabbitMQ

跟風遠走 提交于 2020-01-23 17:06:27
一 、RabbitMQ简介 RabbitMQ是基于AMQP实现的一个开源消息组件,主要用于在分布式系统中存储转发消息,由因高性能、高可用以及高扩展而出名的 Erlang 写成。 。其中,AMQP(Advanced Message Queuing Protocol,即高级消息队列协议),是一个异步消息传递所使用的应用层协议规 二、RabbitMQ特点 高可靠:RabbitMQ 提供了多种多样的特性让你在可靠性和性能之间做出权衡,包括持久化、发送应答、发布确认以及高可用性。 高可用队列:支持跨机器集群,支持队列安全镜像备份,消息的生产者与消费者不论哪一方出现问题,均不会影响消息的正常发出与接收。 灵活的路由:所有的消息都会通过路由器转发到各个消息队列中,RabbitMQ内建了几个常用的路由器,并且可以通过路由器的组合以及自定义路由器插件来完成复杂的路由功能。 支持多客户端:对主流开发语言(如:Python、Ruby、.NET、Java、C、PHP、ActionScript等)都有客户端实现。 集群:本地网络内的多个Server可以聚合在一起,共同组成一个逻辑上的broker。 扩展性:支持负载均衡,动态增减服务器简单方便。 权限管理:灵活的用户角色权限管理,Virtual Host是权限控制的最小粒度。 插件系统:支持各种丰富的插件扩展,同时也支持自定义插件

RabbitMQ_安装配置与管理

时光毁灭记忆、已成空白 提交于 2020-01-23 11:40:06
RabbitMQ 安装配置与管理 安装 安装erlang虚拟机 Rabbitmq基于erlang语言开发,所有需要安装erlang虚拟机 #wget http://www.erlang.org/download/otp_src_R15B01.tar.gz #tar zxvf otp_src_R15B01.tar.gz && cd otp_src_R15B01 #./configure && make install 安装rabbitmq server #wget http://www.rabbitmq.com/releases/rabbitmq-server/v2.8.2/rabbitmq-server-generic-unix-2.8.2.tar.gz #tar rabbitmq-server-generic-unix-2.8.2.tar.gz && cd /rabbitmq-server-generic-unix-2.8.2 修改Makeifle ,添加以下参数,指定安装目录 SBIN_DIR = /usr/sbin MAN_DIR = /usr/share/man TARGET= /usr/lib/rabbitmq 最后 #make && make install 注意:安装脚本最后会从一个网站上拉man手册,有时连不上这个网站,安装脚本就会停住,这时可以Ctrl

RabbitMQ与Redis队列对比

孤者浪人 提交于 2020-01-23 01:09:16
RabbitMQ RabbitMQ是实现AMQP(高级消息队列协议)的消息中间件的一种,最初起源于金融系统,用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。消息中间件主要用于组件之间的解耦,消息的发送者无需知道消息使用者的存在,反之亦然。 Redis 是一个Key-Value的NoSQL数据库,开发维护很活跃,虽然它是一个Key-Value数据库存储系统,但它本身支持MQ功能,所以完全可以当做一个轻量级的队列服务来使用。 具体对比 : 可靠消费 Redis:没有相应的机制保证消息的消费,当消费者消费失败的时候,消息体丢失,需要手动处理 RabbitMQ:具有消息消费确认,即使消费者消费失败,也会自动使消息体返回原队列,同时可全程持久化,保证消息体被正确消费 可靠发布 Reids:不提供,需自行实现 RabbitMQ:具有发布确认功能,保证消息被发布到服务器 高可用 Redis:采用主从模式,读写分离,但是故障转移还没有非常完善的官方解决方案 RabbitMQ:集群采用磁盘、内存节点,任意单点故障都不会影响整个队列的操作 持久化 Redis:将整个Redis实例持久化到磁盘 RabbitMQ:队列,消息,都可以选择是否持久化 消费者负载均衡 Redis:不提供,需自行实现 RabbitMQ:根据消费者情况,进行消息的均衡分发 队列监控 Redis:不提供

VM安装centos7

∥☆過路亽.° 提交于 2020-01-21 15:04:41
RabbitMQ:   RabbitMQ是流行的开源消息队列系统,是AMQP(Advanced Message Queuing Protocol高级消息队列协议)的标准实现,用erlang语言开发。RabbitMQ据说具有良好的性能和时效性,同时还能够非常好的支持集群和负载部署,非常适合在较大规模的分布式系统中使用。          注意:关于centos上安装rabbitmq会有很大问题,大家可以参考我这篇博客,已经可以正常访问。(网上有很多安装都是有问题的,大家可以自己试一下) RabbitMQ安装步骤:   准备工作:     1> vm安装centos: VM安装centos7     2>安装ifconfig,lrzsz,更新yum源等操作。参考: https://www.cnblogs.com/huhongy/p/7766107.html   1> 由于rabbitMQ安装的依赖于erlang,所以需要先进行安装前提环境:     yum install gcc glibc-devel make ncurses-devel openssl-devel xmlto   2> 下载epel-release:     在官网上下载 epel-release 网址http://rpm.pbone.net/index.php3/stat/4/idpl/29069710/dir

rabbitmq主备模式部署

醉酒当歌 提交于 2020-01-20 22:37:26
192.168.15.240 主机名rabbitmq240 192.168.15.241 主机名rabbitmq241 vip: 192.168.15.1 vip: 192.168.15.2 1.两台机器安装 yum -y install erlang.x86_64 ln -s /usr/local/erlang/bin/erl /usr/bin/erl ln -s /usr/local/erlang/bin/epmd /usr/bin/epmd yum -y install rabbitmq.x86_64 2.配置主机名, echo "192.168.15.240 rabbitmq240" >> /etc/hosts echo "192.168.15.241 rabbitmq241" >> /etc/hosts 3.master 192.168.15.240操作 /usr/local/rabbitmq/sbin/rabbitmq-server -detached 生成文件:~/.erlang.cookie cat ~/.erlang.cookie 在master上启动代理:python -m SimpleHTTPServer 7890,备机上执行:wget http://192.168.15.240:7890/.erlang.cookie获取文件

RabbitMQ的安装及使用

一曲冷凌霜 提交于 2020-01-20 18:13:33
rabbitmq作为使用最广泛之一的消息中间件,它采用了erlang语音编写,它支持多种客户端的使用,其采用的基础协议是AMQP 0.9.1,其特点是高可用、高可靠、多语言客户端支持、灵活的路由功能、具有插件机制如Federation插件、具有管理界面、消息可跟踪、支持多种协议如AMQP 0-9-1, AMQP 1.0, MQTT及STOMP、支持消息集群,多语言客户端支持可查看官网 https://www.rabbitmq.com/getstarted.html 。 我们看下它在centos7上的安装,因为它是由erlang语音开发的,因此我们必须要有erlang语音环境,在官网上介绍有下面几种获取方式: A.是rabbitmq团队提供的专门精简化后用于支持rabbitmq的版本。 B.Erlang解决方案给出的包通常是合理并且也是最新版本,但是可能安装过多的依赖项列表。 C.EPEL-企业Linux的额外软件包,它是由Red Hat/Fedora 组织提供的额外的对应官方包,但是就是可能不是最新的安装包。 D.openSUSE为每个发行版生成Erlang包(openSUSE和SLES)。 我们的安装还是使用了Erlang解决方案给出的最新包,获取如下: 1.获取erlang解决方案 wget https://packages.erlang-solutions.com

RabbitMQ安装

懵懂的女人 提交于 2020-01-19 00:51:46
1 准备 yum install build-essential openssl openssl-devel unixODBC unixODBC-devel mack gcc gcc-c++ kernel-devel m4 ncurses-devel tk tc xz 2 下载: http://www.rabbitmq.com/releases/erlang/erlang-19.0.4-1.el7.centos.x86_64.rpm http://mirror.centos.org/centos/7/os/x86_64/Packages/socat-1.7.3.2-2.el7.x86_64.rpm http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm 3 配置 可以不用设置、如果改主机名、绑定集群的host则执行该步骤 vim /etc/hosts 以及 /etc/hostname 4 配置文件 vim /usr/lib/rabbitmq/lib/rabbitmq_server-3.6.6/ebin/rabbit.app 比如修改密码、配置等等,例如 loopback_users 中的<<“guest”>> 只保留guest 5 服务启动和停止

RabbitMQ常见问题

吃可爱长大的小学妹 提交于 2020-01-18 18:56:31
rabbitmq 的使用场景有哪些? ①. 跨系统的异步通信,所有需要异步交互的地方都可以使用消息队列。就像我们除了打电话(同步)以外,还需要发短信,发电子邮件(异步)的通讯方式。 ②. 多个应用之间的耦合,由于消息是平台无关和语言无关的,而且语义上也不再是函数调用,因此更适合作为多个应用之间的松耦合的接口。基于消息队列的耦合,不需要发送方和接收方同时在线。在企业应用集成(EAI)中,文件传输,共享数据库,消息队列,远程过程调用都可以作为集成的方法。 ③. 应用内的同步变异步,比如订单处理,就可以由前端应用将订单信息放到队列,后端应用从队列里依次获得消息处理,高峰时的大量订单可以积压在队列里慢慢处理掉。由于同步通常意味着阻塞,而大量线程的阻塞会降低计算机的性能。 ④. 消息驱动的架构(EDA),系统分解为消息队列,和消息制造者和消息消费者,一个处理流程可以根据需要拆成多个阶段(Stage),阶段之间用队列连接起来,前一个阶段处理的结果放入队列,后一个阶段从队列中获取消息继续处理。 ⑤. 应用需要更灵活的耦合方式,如发布订阅,比如可以指定路由规则。 ⑥. 跨局域网,甚至跨城市的通讯(CDN行业),比如北京机房与广州机房的应用程序的通信。 rabbitmq 有哪些重要的角色? RabbitMQ 中重要的角色有:生产者、消费者和代理: 生产者:消息的创建者,负责创建和推送数据到消息服务器