1、了解消息中间件

消息中间件,Message Queue Middleware,简称MQ,又称消息对列或消息对列中间件,利用高效可靠的消息传递机制进行与平台无关的数据交流,并基于数据通信来进行分布式系统的集成。

      一般有两种传递方式:点对点模式,基于队列的一对一,消息生产者发送消息到对列,消费者从队列中接收消息。

                发布/订阅模式,一对多,发布者将消息发布到某个主题,多个消息订阅者从主题中订阅消息。

消息中间件的作用:解耦、冗余(存储)、扩展性、削峰、可恢复性、顺序保证性、缓冲、异步通信

2、初步了解RabbitMQ

Erlang是一种通用的面向并发的编程语言,可以创建面向大规模并发的语言环境。

RabbitMQ是消息对列,主要是用于做消息代理。本质上说,它接受来自生产者的信息,并将它们传递给消费者。在两者之间, 它可以根据你给它的路由,缓冲规则有选择地进行传递消息。

RabbitMQ特点:可靠性、灵活路由、扩展性、高可用性、多种协议(AMQP、STOMP、MQTT等)、多语言客户端、管理界面、插件机制

3、安装RabbitMQ

(1)RabbitMQ需要运行在Erlang平台上,所以需要先安装Erlang,再安装RabbitMQ,这里需注意版本要对应!!!

    可以去这个网站查询对应版本的信息:https://www.rabbitmq.com/which-erlang.html

(2)Erlang和Rabbit安装时最好选用以管理员的身份去安装,这样就可以很容易的把RabbitMQ注册成服务的形式去管理,不用每次都去开启黑窗口了。

(3)配置Erlang和RabbitMQ的环境变量:Erlang需要在系统变量中添加一个erlang_home的变量,变量值到erlang安装目录的bin目录,同样在path中也添加一个这样的变量值

                   RabbitMQ需要在path中添加一个变量,变量值是RabbitMQ安装目录到sbin.

(4)安装RabbitMQ插件,方便使用,运行cmd.输入:rabbitmq-plugins.bat enable rabbitmq_management

(5)运行cmd,输入rabbitmqctl status,查看运行状态

(6)运行cmd,执行命令rabbitmq-server.bat或右键打开我的电脑-管理-服务-RabbitMQ-启动,显示正在运行后,进入http://localhost:15672/#/,用户名/密码:guest/guest,登录到RabbitMQ管理页面查看相关信息。

    

RabbitMQ小记(一)的更多相关文章

  1. RabbitMQ小记(四)

    1.RabbitMQ管理 (1)权限管理 物理服务器和虚拟主机都各自有独立的权限管理,用户访问需要设置权限. 授权命令:rabbitmqctl set permissions [-p vhost] { ...

  2. RabbitMQ小记(三)

    1.RabbitMQ中mandatory和immediate以及备份交换机 (1)mandatory为true时,若交换机无法根据自身类型和路由键找到符合条件的对列,那么RabbitMQ会回调Basi ...

  3. RabbitMQ小记(二)

    1.RabbitMQ相关介绍 (1)RabbitMQ整体上是一个生产者和消费者模型,主要负责接收.存储.转发消息.RabbitMQ整体结构图如下: (2)生产者:发送消息的一方,生产者创建一条消息,发 ...

  4. rabbitmq 小记

    如果消息由生产者生产之后,没有消费端来消费(此处生产者也负责队列的创建) 在超时之后需要对消息进行删除(如果一直保留队列里,在消费端启动后消费了此消息,会和生产端的数据产生冲突,添加程序的复杂度) 因 ...

  5. Java 小记 — RabbitMQ 的实践与思考

    前言 本篇随笔将汇总一些我对消息队列 RabbitMQ 的认识,顺便谈谈其在高并发和秒杀系统中的具体应用. 1. 预备示例 想了下,还是先抛出一个简单示例,随后再根据其具体应用场景进行扩展,我觉得这样 ...

  6. 消息队列——RabbitMQ学习笔记

    消息队列--RabbitMQ学习笔记 1. 写在前面 昨天简单学习了一个消息队列项目--RabbitMQ,今天趁热打铁,将学到的东西记录下来. 学习的资料主要是官网给出的6个基本的消息发送/接收模型, ...

  7. RabbitMq应用二

    在应用一中,基本的消息队列使用已经完成了,在实际项目中,一定会出现各种各样的需求和问题,rabbitmq内置的很多强大机制和功能会帮助我们解决很多的问题,下面就一个一个的一起学习一下. 消息响应机制 ...

  8. 如何优雅的使用RabbitMQ

    RabbitMQ无疑是目前最流行的消息队列之一,对各种语言环境的支持也很丰富,作为一个.NET developer有必要学习和了解这一工具.消息队列的使用场景大概有3种: 1.系统集成,分布式系统的设 ...

  9. RabbitMq应用一的补充(RabbitMQ的应用场景)

    直接进入正题. 一.异步处理 场景:发送手机验证码,邮件 传统古老处理方式如下图 这个流程,全部在主线程完成,注册->入库->发送邮件->发送短信,由于都在主线程,所以要等待每一步完 ...

随机推荐

  1. Redis+Kafka异步提高并发

    Redis+Kafka异步提高并发 Redis+Kafka异步提高并发 设计 实现 提交请求接口 Kafka消费队列 异步处理Service 客户端轮询获取结果 Redis集群节点配置 KafKa集群 ...

  2. WebApis中DOM执行机制的认识

    1.1. 节点操作 1.1.1 删除节点 node.removeChild() 方法从 node节点中删除一个子节点,返回删除的节点. <button>删除</button> ...

  3. express-session中的saveUninitialized和resave

    app.use(session({ name: config.session.name, secret: config.session.secret, resave: true, saveUninit ...

  4. Maven快速入门(四)Maven中的pom.xml文件详解

    上一章,我们讲了Maven的坐标和仓库的概念,介绍了Maven是怎么通过坐标找到依赖的jar包的.同时也介绍了Maven的中央仓库.本地仓库.私服等概念及其作用.这些东西都是Maven最基本.最核心的 ...

  5. 用Java写编译器(1)- 词法和语法分析

    词法和语法分析器构建 ANTLR简介 ANTLR全称ANother Tool for Languate Recognition,是基于LL(*)算法实现的语法分析器生成器和词法分析器生成器,由旧金山大 ...

  6. android开发之使edittext输入弹出数字软键盘。亲测可用。手机号登陆注册常用。

    <EditText android:id="@+id/edit_digit_input" android:layout_width="wrap_content&qu ...

  7. Java远程连接Linux服务器并执行命令及上传文件

    最近再开发中遇到需要将文件上传到Linux服务器上,至此整理代码笔记. 此种连接方法中有考虑到并发问题,在进行创建FTP连接的时候将每一个连接对象存放至 ThreadLocal<Ftp> ...

  8. Activiti7 流程变量(理论)

    什么是流程变量 流程变量在Activiti中是一个非常重要的角色,流程运转有时需要靠流程变量,业务系统和Activiti结合时少不了流程变量,流程变量就是Activiti在管理工作流时根据管理需要而设 ...

  9. C#发送邮件三种方法,Localhost,SMTP,SSL-SMTP

    C#发送邮件三种方法,Localhost,SMTP,SSL-SMTP 通过.Net FrameWork 2.0下提供的“System.Net.Mail”可以轻松的实现,本文列举了3种途径来发送: 1. ...

  10. [oracle/sql]关于清除重复,not in方案和not exists方案的对比

    有这样一张表: CREATE TABLE tb_sc ( id NUMBER not null primary key, studentid int not null, courseid int no ...