RabbitMQ(2)をインストールして再生する

RabbitMQ(2)をインストールして再生する

RabbitMQをインストールするには、tomcatのインストールと同様に、最初にerlang言語環境をインストールする必要があります。最初に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

テスト

ファイアウォールをオフにします。systemctlstopfirewalld

ブラウザ入力:http:// ip:15672

デフォルトのアカウントパスワード:ゲスト、ゲストユーザーはデフォルトでリモート接続を許可されていません

  • アカウントを作成する

    rabbitmqctl add_user admin admin
    
  • ユーザーロールを設定する

    rabbitmqctl set_user_tags admin administrator
    
  • ユーザー権限を設定する

    rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
    
  • 現在のユーザーと役割を表示する

    rabbitmqctl list_users
    
  • 現在のユーザーと役割を表示する

    rabbitmqctl change_password admin admin
    

ここに画像の説明を挿入

管理インターフェースの紹介

  • 概要:概要
  • 接続:リンクステータスの表示
  • チャネル:チャネル(チャネル)の状況
  • 交換:スイッチ(ルーティング)状況、デフォルト4タイプ7
  • キュー:メッセージキューの状況
  • 管理者:管理者のリスト
  • 港:
    • 5672:RabbitMQは、プログラミング言語のクライアント接続用のポートを提供します
    • 15672:RabbitMQ管理インターフェイスのポート
    • 25672:RabbitMQクラスターのポート

RabbitMQに接続するJavaプログラム

ここに画像の説明を挿入

<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