RabbitMQ(二)安装来玩一下

RabbitMQ(二)安装来玩一下

想要安装RabbitMQ,必须先安装erlang语言环境,类似安装tomcat,必须先安装JDK

安装

rpm -ivh erlang-21.3.8.16-1.el7.x86_64.rpm
rpm -ivh socat-1.7.3.2-5.el7.lux.x86_64.rpm
rpm -ivh rabbitmq-server-3.8.6-1.el7.noarch.rpm

启动后台管理插件

rabbitmq-plugins enable rabbitmq_management

启动RabbitMQ

systemctl start rabbitmq-server.service
systemctl status rabbitmq-server.service
systemctl restart rabbitmq-server.service
systemctl stop rabbitmq-server.service

查看进程

ps -ef | grep rabbitmq

测试

关闭防火墙: systemctl stop firewalld

浏览器输入:http://ip:15672

默认帐号密码:guest,guest用户默认不允许远程连接

  • 创建账号

    rabbitmqctl add_user admin admin
    
  • 设置用户角色

    rabbitmqctl set_user_tags admin administrator
    
  • 设置用户权限

    rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
    
  • 查看当前用户和角色

    rabbitmqctl list_users
    
  • 查看当前用户和角色

    rabbitmqctl change_password admin admin
    

在这里插入图片描述

管理界面介绍

  • overview:概览
  • connections:查看链接情况
  • channels:信道(通道)情况
  • Exchanges:交换机(路由)情况,默认4类7个
  • Queues:消息队列情况
  • Admin:管理员列表
  • 端口:
    • 5672:RabbitMQ提供给编程语言客户端链接的端口
    • 15672:RabbitMQ管理界面的端口
    • 25672:RabbitMQ集群的端口

Java程序连接RabbitMQ

在这里插入图片描述

<dependencies>
    <dependency>
        <groupId>com.rabbitmq</groupId>
        <artifactId>amqp-client</artifactId>
        <version>5.7.3</version>
    </dependency>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
        <version>1.7.25</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.9</version>
    </dependency>
</dependencies>
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %m%n
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=rebbitmq.log
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %l %m%n
log4j.rootLogger=error, stdout,file

log4j 配置文件不添加有可能会出现问题

public class ConnectionUtil {
    
    

    //RabbitMQ IP
    private final static String IP = "IP";
    //RabbitMQ PORT
    private final static int PORT = 5672;
    //RabbitMQ VHOST
    private final static String VHOST = "/szx";
    //RabbitMQ USERNAME
    private final static String USERNAME = "admin";
    //RabbitMQ PASSWORD
    private final static String PASSWORD = "admin";

    //获取与RabbitMQ的连接
    private static Connection getConnection(){
    
    
        //创建连接工厂
        ConnectionFactory factory = new ConnectionFactory();
        //在工厂对象中设置MQ的连接信息
        factory.setHost(IP);
        factory.setPort(PORT);
        factory.setVirtualHost(VHOST);
        factory.setUsername(USERNAME);
        factory.setPassword(PASSWORD);
        //通过工厂获得与MQ的连接
        Connection connection = null;
        try {
    
    
            connection = factory.newConnection();
        } catch (IOException e) {
    
    
            e.printStackTrace();
        } catch (TimeoutException e) {
    
    
            e.printStackTrace();
        }
        return connection;
    }

    public static void main(String[] args) {
    
    
        Connection connection = getConnection();
        System.out.println("connection: " + connection);
        try {
    
    
            connection.close();
        } catch (IOException e) {
    
    
            e.printStackTrace();
        }
    }

}

猜你喜欢

转载自blog.csdn.net/weixin_49741990/article/details/113107632