RabbitMQ从入门到精通


安利HTML网页版观看详细代码

Linux 部署运维

1.安装erlang

2.安装socat

$ yum install socat

3.安装rabbit MQ

$ rpm -ivh rabbitmq-server-3.7.5-1.el7.noarch.rpm

4.查看rabbitmq状态

$ systemctl status rabbitmq-server.service
$ bbitmqctl status //当前状态
$ bbitmqctl cluster_status //集群状态

5.rabbitmq启动

$ systemctl start rabbitmq-server.service

6.rabbitmq的管理界面

$ rabbitmq-plugins list //列出所有插件
$ rabbitmq-plugins enable rabbitmq_management //启动后在http://server-name:15672访问
$ rabbitmq-plugins disable rabbitmq_management //关闭rabbitmq管理插件
$ rabbitmq-plugins enable rabbitmq_tracing //启用trace插件
$ rabbitmqctl trace_on //打开trace的开关
$ rabbitmqctl trace_on -p vhost
$ rabbitmqctl trace_off //关闭trace的开关
$ rabbitmq-plugins disable rabbitmq_tracing //关闭trace插件
$ rabbitmq-plugins enable rabbitmq_delayed_message_exchange //安装延时队列

7.rabbitmq停止

$ systemctl stop rabbitmq-server.service

8.rabbitmq关闭

$ rabbitmqctl shutdown

9.rabbitmq重启

$ systemctl restart rabbitmq-server.service
$ rabbitmqctl reset

10.配置文件位于/etc/rabbitmq

$ rabbitmqctl environment //查看运行参数

11.用户管理

$ rabbitmqctl list_users //列出所有用户
$ rabbitmqctl list_user_permissions user //查看用户权限
$ 例子:rabbitmqctl list_user_permissions hyp
$ rabbitmqctl add_user user password //添加用户
$ 例子:rabbitmqctl add_user hyp hyp
$ rabbitmqctl delete_user user //删除用户
$ 例子:rabbitmqctl delete_user hyp
$ rabbitmqctl set_user_tags user <administrator | monitoring | management | policymaker> //授予角色
例子:$ rabbitmqctl set_user_tags hyp administrator
administrator角色,可查看所有信息,并且可以对用户,策略(policy)进行操作.
monitoring角色,可查看rabbitmq节点的相关信息(进程数,内存使用情况,磁盘使用情况等)
policymaker角色,可以对策略(policy)进行管理,但无法查看节点的相关信息.
management角色,只能查看队列和交换机等,无法看到节点信息,也无法对策略进行管理.
rabbitmqctl change_password user newpassword //修改密码
例子:$ rabbitmqctl change_password hyp hyppassword

12.集群

$ rabbitmqctl stop_app
$ rabbitmqctl reset
$ rabbitmqctl join_cluster --ram rabbit@v01-app-rabbitmq01 //加入集群,该节点为内存节点类型
$ rabbitmqctl join_cluster --disc rabbit@v01-app-rabbitmq01 //加入集群,该节点为磁盘节点类型
$ rabbitmqctl change_cluster_node_type <ram | disc> //修改节点类型
$ rabbitmqctl start_app
/*到目前为止,集群虽然搭建成功,但只是默认的普通集群,exchange,binding等数据可以复制到集群各节点
但对于队列来说,各节点只有相同的元数据,即队列结构,但队列实体只存在于创建改队列的节点,即队列内容不会复制
(从其余节点读取,可以建立临时的通信传输)
$ rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}' //将所有队列设置为镜像队列,即队列会被复制到各个节点,各个节点状态保持一直
$ rabbitmqctl list_policies //查看策略

Client Demo-HelloWorld (JAVA)

1.Create Maven Project And Import Rabbit MQ amqp-client

<!-- https://mvnrepository.com/artifact/com.rabbitmq/amqp-client -->
<dependency>
    <groupId>com.rabbitmq</groupId>
    <artifactId>amqp-client</artifactId>
    <version>5.4.1</version>
</dependency>

2.Create Send Class

import com.rabbitmq.client.ConnectionFactory;
import com.rabbitmq.client.Connection;
import com.rabbitmq.client.Channel;

import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.util.concurrent.TimeoutException;

public class Send {
    
    private final static String QUEUE_NAME = "hello";

    public static void main(String[] args) throws IOException, TimeoutException {
    
        ConnectionFactory connectionFactory = new ConnectionFactory();
        connectionFactory.setHost("IP or Host");
        connectionFactory.setUsername("your UserName");
        connectionFactory.setPassword("your Password");
        Connection connection = connectionFactory.
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值