服务和端口
- RabbitMQ服务的默认端口是5672
- RabbitMQ控制台的默认端口是15672
插件
- 插件的几种用途:
- 支持更多的消息协议
- 系统状态监控
- 额外的AMQP 0-9-1 exchange 类型
- node federation
所以RabbitMQ是通过插件的方式添加增强的功能。
- 插件的使用:
插件可以在RabbitMQ 节点启动的时候被激活,或者是通过CLI 工具激活,如果想让一个插件在启动的时候被激活,那么必须通过rabbitmq-plugins 命令开启该插件:rabbitmq-plugins enable <plugin-name>
关闭插件rabbitmq-plugins disable <plugin-name>
查看插件及其状态rabbitmq-plugins list
控制台插件
RabbitMQ的控制台是已插件的方式构建的,默认控制台插件没有默认开启,需要手动开启。
windows 版本开启控制台插件的命令:
rabbitmq-plugins enable rabbitmq_management
Logging
通过rabbitmqctl environment命令可以查看到日志目录配置信息。Windows默认配置在:
<用户目录>\AppData\Roaming\RabbitMQ\log
Management Plugin
管理插件提供HTTP API来管理和监控RabbitMQ节点和集群,同时提供里一个基于浏览器的UI和一个命令行工具rabbitmqadmin
协议
RabbitMQ支持多种协议,但是最常用的是AMQP 0-9-1 协议
Java 应用连接RabitMQ,发送和接收小时是通过Java版本的AMQP client 实现的,并没有一个针对RabbitMQ的client,RabbitMQ只是最常用的一个AMQP协议的提供者
Connection
AMQP Client Connection 是对Socket Connection的抽象,处理协议版本协商,认证等信息,所以用户名密码等认证信息是在Connection层面处理的
Channel
个人理解就是类似Http Connect类似的概念,是构建与Socket(TCP)上一个级别的连接,就像HTTP连接可以在同一个socket连接上创建
Message durability
想要让消息持久化,必须让queue和消息的durable都为true