码迷,mamicode.com
首页 > Web开发 > 详细

大型网站架构之千万PV之RabbitMQ

时间:2018-07-31 23:33:59      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:排队   ESS   成熟   png   blog   queue   firewalld   stop   pgm   

  • 简介
  • MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。其中较为成熟的MQ产品有IBM WEBSPHERE MQ等等。

    • 几个概念

    Exchange:交换机,决定了消息路由规则;

    Queue:消息队列;

    Channel:进行消息读写的通道;

    Bind:绑定了Queue和Exchange,意即为符合什么样路由规则的消息,将会放置入哪一个消息队列;

    • 实验环境

    一台磁盘节点:192.168.177.145

    一台内存节点:192.168.177.135

    一台内存节点:192.168.177.132
    技术分享图片

    磁盘节点

    # vim /etc/hostname
       mq01.localadmin
    # vim /etc/hosts
      192.168.177.145 mq01
      192.168.177.135 mq02
      192.168.177.132 mq03
    # init 6

    技术分享图片
    技术分享图片
    技术分享图片
    技术分享图片

    内存节点

    # vim /etc/hostname
       mq02.localadmin
    # vim /etc/hosts
      192.168.177.145 mq01
      192.168.177.135 mq02
      192.168.177.132 mq03
    # init 6

    内存节点

    # vim /etc/hostname
       mq03.localadmin
    # vim /etc/hosts
      192.168.177.145 mq01
      192.168.177.135 mq02
      192.168.177.132 mq03
    # init 6

    磁盘节点

    # systemctl stop firewalld.service
    # setenforce 0
    # ln -s /usr/lib/rabbitmq/bin/* /usr/bin/ //识别命令
    # rabbitmq-plugins enable rabbitmq_management   //提供web端
    # systemctl start rabbitmq-server.service  //开启服务
    # rabbitmqctl cluster_status   //查看状态

    技术分享图片
    技术分享图片

    内存节点(两台一样)

    # systemctl stop firewalld.service
    # setenforce 0
    # ln -s /usr/lib/rabbitmq/bin/* /usr/bin/ //识别命令
    # rabbitmq-plugins enable rabbitmq_management   //提供web端
    # systemctl start rabbitmq-server.service  //开启服务
    # rabbitmqctl cluster_status   //查看状态

    技术分享图片
    技术分享图片

    磁盘节点

    # systemctl stop rabbitmq-server.service
    # cd /var/lib/rabbitmq/
    # cat .erlang.cookie 
       JZVFRKVBEINPGMWDOFOR//查看序列号,进行复制
    # systemctl start rabbitmq-server.service

    技术分享图片

    内存节点(两台一样)

    # systemctl stop rabbitmq-server.service
    # cd /var/lib/rabbitmq/
    # vim .erlang.cookie
       JZVFRKVBEINPGMWDOFOR  //换成这个
    # systemctl start rabbitmq-server.service
    # rabbitmqctl stop_app  //停掉rabbitmq应用
    # rabbitmqctl join_cluster --ram rabbit@mq01    //调用cluster命令,将mq02连接到mq01
    # rabbitmqctl start_app  //启用rabbitmq应用
    # rabbitmqctl cluster_status  //查看状态

    技术分享图片
    技术分享图片
    技术分享图片

    磁盘节点

    # rabbitmqctl cluster_status  //查看状态

    技术分享图片
    技术分享图片

    大型网站架构之千万PV之RabbitMQ

    标签:排队   ESS   成熟   png   blog   queue   firewalld   stop   pgm   

    原文地址:http://blog.51cto.com/13620936/2152923

    (0)
    (0)
       
    举报
    评论 一句话评论(0
    登录后才能评论!
    © 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
    迷上了代码!