rabbitmq学习笔记

Posted mr.杰瑞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了rabbitmq学习笔记相关的知识,希望对你有一定的参考价值。

AMQP协议

  • 生产者
  • 消费者
  • 队列
    一个队列存多条消息
  • 消息
  • 连接
    发消息和接收消息都是必须先建立连接
  • 通道(channel)
    一个连接有多个通道,消息会在通道里面流转,之后到达消费者
  • 交换机(exchange)
    路由的概念,通过绑定,和路由
  • 路由键
    交换机通过路由键去寻址,找到队列
  • 绑定
    队列和交换机的一个关联连接
  • 用户
    在RabbitMQ里,可以通过制定的用户名和密码来进行连接,每个用户可以分配不同的权限。读或者写或在实例里配置的权限
    在这里插入图片描述
    交换机类似mysql的数据库,queue对应的mysql的某张表

安装

  1. 首先安装erlang环境
    新增/etc/yum.repos.d/rabbitmq_erlang.repo
    在文件中添加下面内容
[rabbitmq_erlang]
name=rabbitmq_erlang
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/$basearch
repo_gpgcheck=1
gpgcheck=1
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
       https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300
 
[rabbitmq_erlang-source]
name=rabbitmq_erlang-source
baseurl=https://packagecloud.io/rabbitmq/erlang/el/7/SRPMS
repo_gpgcheck=1
gpgcheck=0
enabled=1
# PackageCloud's repository key and RabbitMQ package signing key
gpgkey=https://packagecloud.io/rabbitmq/erlang/gpgkey
       https://dl.bintray.com/rabbitmq/Keys/rabbitmq-release-signing-key.asc
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt
metadata_expire=300

在这里插入图片描述

  1. yum install erlang
    在这里插入图片描述
    意思是源没有找到
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
 yum -y install make gcc gcc-c++kernel-devel m4 ncurses-devel openssl-devel java-devel  unixODBC-devel
wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm
rpm -Uvh erlang-solutions-1.0-1.noarch.rpm
rpm --import http://packages.erlang-solutions.com/rpm/erlang_solutions.asc

上面操作就是换源,网上找的 之后再来一次

yum install erlang

在这里插入图片描述

判断是否安装完成

erl

在这里插入图片描述
ok

继续

  1. 安装rabbitmq 下载rpm包
wget https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.8.1/rabbitmq-server-3.8.1-1.el7.noarch.rpm

安装

yum install rabbitmq-server-3.8.1-1.el7.noarch.rpm

在这里插入图片描述
安装完了

启动rabbitmq

rabbitmq-server start

加入开机自启项

chkconfig rabbitmq-server on

查看状态

rabbitmqctl status

docker中安装
主推这种,因为现在工作中都是用docker

三级目录

公司用到rabbitmq了,那咱们也要顺应时代学习一下子。
rabbitmq是啥?
我的认知就是它是个消息队列(先进先出),就比如老师布置了3个任务,写到了黑板上,先做完a任务,然后再做b任务,然后再做c任务。
那么小明依次完成了这三个任务,每完成一个就擦掉。那此时老师就是生产者,小明就是消费者,黑板就是rabbitmq
能削峰(不会让你一下干很多事),能异步,能解耦等等。

未完待续~~

以上是关于rabbitmq学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

RabbitMQ简单学习笔记

RabbitMQ学习笔记

RabbitMq学习笔记

学习笔记编程不良人老师的RabbitMQ教程的学习笔记

Python 学习笔记 - RabbitMQ

RabbitMq学习笔记