RabbitMQ

关于ActiveMQ、RocketMQ、RabbitMQ、Kafka的区别

二次信任 提交于 2020-01-24 15:02:16
综合上面的材料得出以下两点: (1)中小型软件公司,建议选RabbitMQ.一方面,erlang语言天生具备高并发的特性,而且他的管理界面用起来十分方便。正所谓,成也萧何,败也萧何!他的弊端也在这里,虽然RabbitMQ是开源的,然而国内有几个能定制化开发erlang的程序员呢?所幸,RabbitMQ的社区十分活跃,可以解决开发过程中遇到的bug,这点对于中小型公司来说十分重要。不考虑rocketmq和kafka的原因是,一方面中小型软件公司不如互联网公司,数据量没那么大,选消息中间件,应首选功能比较完备的,所以kafka排除。不考虑rocketmq的原因是,rocketmq是阿里出品,如果阿里放弃维护rocketmq,中小型公司一般抽不出人来进行rocketmq的定制化开发,因此不推荐。 (2)大型软件公司,根据具体使用在rocketMq和kafka之间二选一。一方面,大型软件公司,具备足够的资金搭建分布式环境,也具备足够大的数据量。针对rocketMQ,大型软件公司也可以抽出人手对rocketMQ进行定制化开发,毕竟国内有能力改JAVA源码的人,还是相当多的。至于kafka,根据业务场景选择,如果有日志采集功能,肯定是首选kafka了。具体该选哪个,看使用场景。 使用场景: 在我们的电商中,在发送短信和商品上下架的时候使用了rebbitMQ 来源: CSDN 作者:

CentOS7 安装 RabbitMQ

坚强是说给别人听的谎言 提交于 2020-01-24 14:44:17
参考资料: 在CentOS7上安装RabbitMQ EPEL/FAQ centos7环境下RabbitMQ安装与配置 安装步骤: 1. 安装 erlang   rpm -Uvh https://download.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm   yum -y install erlang 2. 安装 RabbitMQ   # 下载 rpm     wget http://www.rabbitmq.com/releases/rabbitmq-server/v3.6.6/rabbitmq-server-3.6.6-1.el7.noarch.rpm\   # 安装 rpm     yum -y install rabbitmq-server-3.6.6-1.el7.noarch.rpm 3. 启动 RabbitMQ   # centos6, 启动服务     service rabbitmq-server start   # centos7,启动服务     systemctl start rabbitmq-server.service   # centos6,查看状态     service rabbitmq-server status   # centos7,查看状态     systemctl

Docker - container with multiple images

99封情书 提交于 2020-01-24 14:30:33
问题 I wanted to make a Dockerfile with multiple images to run in one container. What is the best method to go about this? Below is a list of what I wanted to run in a single container. I have not have any luck with making a Dockerfile with all of these included. MySQL Server RabbitMQ Java8 Node.js Xvfb Firefox Chrome This is what I have so far, can I get a few tips FROM stackbrew/ubuntu:12.04 MAINTAINER # Update the repository sources list #RUN apt-get update # My SQL Server ############### RUN

4.Springboot2.x集成 RabbitMQ的几种常见用法

北战南征 提交于 2020-01-24 11:17:05
Spring Boot 集成 RabbitMQ的几种常见用法 前言 Spring Boot 集成 RabbitMQ 非常简单,如果只是简单的使用配置非常少,Spring Boot 提供了 spring-boot-starter-amqp 项目对消息各种支持。 引入依赖 compile group: 'org.springframework.boot', name: 'spring-boot-starter-amqp' 添加配置文件yml server : port : 8001 spring : application : name : zoo - plus - rabbitmq rabbitmq : virtual-host : / host : localhost port : 5672 username : guest password : guest 直接通过队列(单生-单消) 我们需要先配置队列 /** * @author: 谢飞 */ @Configuration public class RabbitConfig { @Bean public Queue helloQueue ( ) { return new Queue ( "hello-queue" ) ; // return QueueBuilder.durable("hello-queue").build();

Getting rabbitmq authentication failing even with cookie is set

杀马特。学长 韩版系。学妹 提交于 2020-01-24 11:09:50
问题 I have recently installed rabbitmq with ErlanOTP on Windows 10 running on lattePanda I ran rabbitmqctl status and got the following error: C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.5\sbin>rabbitmqctl status Status of node rabbit@DESKTOP-V6GQ6RF ... Error: unable to perform an operation on node 'rabbit@DESKTOP-V6GQ6RF'. Please see diagnostics information and suggestions below. Most common reasons for this are: Target node is unreachable (e.g. due to hostname resolution, TCP

Getting rabbitmq authentication failing even with cookie is set

自古美人都是妖i 提交于 2020-01-24 11:08:27
问题 I have recently installed rabbitmq with ErlanOTP on Windows 10 running on lattePanda I ran rabbitmqctl status and got the following error: C:\Program Files\RabbitMQ Server\rabbitmq_server-3.7.5\sbin>rabbitmqctl status Status of node rabbit@DESKTOP-V6GQ6RF ... Error: unable to perform an operation on node 'rabbit@DESKTOP-V6GQ6RF'. Please see diagnostics information and suggestions below. Most common reasons for this are: Target node is unreachable (e.g. due to hostname resolution, TCP

Airflow使用入门指南

五迷三道 提交于 2020-01-24 06:21:36
Airflow能做什么 关注公众号, 查看更多 http://mp.weixin.qq.com/s/xPjXMc_6ssHt16J07BC7jA Airflow 是一个工作流分配管理系统,通过有向非循环图的方式管理任务流程,设置任务依赖关系和时间调度。 Airflow独立于我们要运行的任务,只需要把任务的名字和运行方式提供给Airflow作为一个task就可以。 安装和使用 最简单安装 在Linux终端运行如下命令 (需要已安装好 python2.x 和 pip ): pip install airflow pip install "airflow[crypto, password]" 1 2 安装成功之后,执行下面三步,就可以使用了。默认是使用的 SequentialExecutor , 只能顺次执行任务。 初始化数据库 airflow initdb [必须的步骤] 启动web服务器 airflow webserver -p 8080 [方便可视化管理dag] 启动任务 airflow scheduler [scheduler启动后,DAG目录下的dags就会根据设定的时间定时启动] 此外我们还可以直接测试单个DAG,如测试文章末尾的DAG airflow test ct1 print_date 2016-05-14 最新版本的Airflow可从 https://github

关于RabbitMQ Queue Argument的简介

北城以北 提交于 2020-01-24 04:12:22
1.Message TTL message在队列queue中可以存活多长时间,以毫秒为单位;发布的消息在queue时间超过了你设定的时间就会被删除掉。 channel.queueDeclare("test", true, false, false, new HashMap<String, Object>()); 2.Auto expire auto expire 设置当前的queue在指定的时间内,没有consumer、basic.get也就是未被访问,就会被删除。 3.MaxLength与MaxLength bytes Max Length(x-max-length): 限定队列的消息的最大值长度,超过指定长度将会把最早的几条删除掉, 类似于mongodb中的固定集合,例如保存最新的100条消息, Feature=Lim Max Length Bytes(x-max-length-bytes): 限定队列最大占用的空间大小, 一般受限于内存、磁盘的大小, Features=Lim B Dead letter exchange(x-dead-letter-exchange): 当队列消息长度大于最大长度、或者过期的等,将从队列中删除的消息推送到指定的交换机中去而不是丢弃掉,Features=DLX 4.dead letter exchange与dead letter

RabbitMQ 通信过程

风格不统一 提交于 2020-01-24 04:10:09
Rabbit MQ的通信过程 MQ全称为Message Queue, 是一种分布式应用程序的的通信方法,是消费-生产者模型的典型的代表,producer往消息队列中不断写入消息,而另一端consumer则可以读取或者订阅队列中的消息,这点可以与数据结构中队列的作用相类似,具有FIFO的特点。 RabbitMQ是MQ产品的典型实现,是基于AMQP协议可复用的企业消息系统。业务上,可以实现服务提供者和消费者之间的数据解耦,提供高可用性的消息传输机制,在实际生产中应用相当广泛。 本文意在介绍Rabbitmq的基本原理,包括rabbitmq基本概念,组件的基本用途,通信过程等。 一:基本概念 先看 图片: 1.Message: 消息,是有消息头和消息体组成的。消息体是不透明的,消息体是由一些可选属性组成的,包括路由键(routing-key)、优先级(priority)、持久性存储(delivery-mode)等 2.Publisher: 消息生产者,是向交换器发送消息的客户端程序,我们可以简单理解为就是一个Java程序 3.Exchange: 交换器,用来接收生产者发送的消息,并将这些消息路由发送给服务器中的队列。消息要先经过交换器,再到队列中去。 常见的三种交换器类型: direct: 发布与订阅,完全匹配 。我们可以简单理解为一对一的关系,一个交换器将消息发送给一个队列,是完全匹配的

Window10下RabbitMQ安装图文教程

≯℡__Kan透↙ 提交于 2020-01-24 03:50:44
一、erlang下载安装 1、下载 下载erlang,原因在于RabbitMQ服务端代码是使用并发式语言erlang编写的,下载地址:http://www.erlang.org/downloads,双击.exe文件进行安装就好。 百度网盘下载: 链接:https://pan.baidu.com/s/1rOPj2AlxVp1rzEBw7iacGw 密码:9t3j 2、安装 一直next就可以,不再描述 3、配置环境变量 安装完成之后创建一个名为ERLANG_HOME的环境变量,其值指向erlang的安装目录。 同将%ERLANG_HOME%\bin加入到Path中 4、验证是否成功 最后打开命令行,输入erl,如果出现erlang的版本信息就表示erlang语言环境安装成功。 二、RabbitMQ下载安装 1、下载 RabbitMQ官网下载地址 百度网盘下载(会更快点) 链接:https://pan.baidu.com/s/1vzVZdffoNUvv_ZPC5qEVqA 密码:qw9a 进入下载页面: 选择对应的下载链接: 2、安装(安装路径不能有空格) 默认的安装路径是由空格的,请注意:最新版本的3.7.4是无需理会安装空格的。 三、激活 RabbitMQ’s Management Plugin 1、激活 安装RabbitMQ-Plugins,这个相当于是一个管理界面