zoukankan      html  css  js  c++  java
  • rabbitmq实践笔记(一):安装、配置与使用初探

    引言:

      对于一个大型的软件系统来说,会有很多的组件、模块及不同的子系统一起协同工作,模块之间的通信需要一个可靠的通信管道来保证

    ,通信管道需要解决解决很多问题,比如:

    1)信息的发送者和接收者如何维持这个连接,如果一方的连接中断,这期间的数据如何方式丢失?

     2)如何降低发送者和接收者的耦合度?

     3)如何让Priority高的接收者先接到数据?

     4)如何做到load balance?有效均衡接收者的负载?

     5)如何有效的将数据发送到相关的接收者?也就是说将接收者subscribe 不同的数据,如何做有效的filter。

     6)如何做到可扩展,甚至将这个通信模块发到cluster上?

     7)如何保证接收者接收到了完整,正确的数据?

      AMDQ协议解决了以上的问题,而RabbitMQ实现了AMQP,关于rabbitmq的介绍可以看其官方文档介绍!

    安装指南:

    rabbitmq是建立在Erlang OTP平台上,所以需要先安装Erlang OTP平台,

    windows下安装方法如下 

    1)去官网上下载Erlang运行时,选择合适的版本,一般最新的rabbitmq是基于最新的Erlang OTP, 全部点击下一步即可

    ,安装完成后可能需要配置系统环境变量,与jdk以及nodejs运行环境类似

    2.下载运行RabbitMQ,需要其他版本或者32位系统的,可以去官网下载,全部点击下一步即可,安装完成会新增一个windows服务,

    默认安装的RabitMQ监听的是5672端口;

    linux下安装稍微复杂点以CentOS 7.3为例:

    1)安装Erlang OTP,可以下载最新的Erlang最新的rpm包,然后调用rmp命令安装特定的版本,也可以调用CentOS的yum高级命令安装,

    yum install erlang
    

    2)安装RabbitMQ,去rabbitmq官网上获取指定版本的rpm

     wget https://dl.bintray.com/rabbitmq/rabbitmq-server-rpm/rabbitmq-server-3.6.12-1.el7.noarch.rpm
    yum install  rabbitmq-server-3.6.12-1.el7.noarch.rpm

    3)启动rabbitmq的服务并查看服务状态

    service rabbitmq-server start
    service rabbitmq-server status

     4.rabbitmq的插件较丰富,可以安装rabbitmq的web管理插件

    rabbitmq-plugins enable rabbitmq_management
    

      备注:公网访问你可能需要开启防火墙,RabbitMQ默认监听的是5672端口,web管理插件为15672端口

    ,centos使用的是firewall防火墙,开启方法如下 

    firewall-cmd --add-port=15672/tcp --permanent
    firewall-cmd --add-port=5672/tcp --permanent
    

      至此rabbitmq环境搭建完成 ,你可以调用rabbitmqctl --h查看其他相关命令,如添加用户等,也可以访问他的web插件进行相关配置

  • 相关阅读:
    nopcommerce商城系统--文档整理
    浏览器标签页显示图标
    SQL SERVER 查询语句学习:CHARINDEX
    NHibernate3.3.3 学习笔记1
    权限管理UML设计草图
    jquery UI 跟随学习笔记——拖拽(Draggable)
    Unity3d IOS中的IGUI控件
    Unity3d ngui基础教程
    unity3d 幻灯片效果实现
    unity3d 场景间数据传递
  • 原文地址:https://www.cnblogs.com/shatanku/p/7568839.html
Copyright © 2011-2022 走看看