国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

rabbitmq消費者與生產(chǎn)者

這篇具有很好參考價值的文章主要介紹了rabbitmq消費者與生產(chǎn)者。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

在第一次學習rabbitmq的時候,遇到了許多不懂得

mq消費者和生產(chǎn)者,java-rabbitmq,rabbitmq,分布式,Powered by 金山文檔

第一步導包

<dependency>
<groupId>com.rabbitmq</groupId>
<artifactId>amqp-client</artifactId>
<version>5.14.2</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>

第二步新增生產(chǎn)者

public class Producer {
    //隊列名稱
    public static final String QUEUE_NAME="hello";
    //發(fā)消息
    public static void main(String[] args) throws Exception {
        //創(chuàng)建一個連接工廠
        ConnectionFactory connectionFactory = new ConnectionFactory();
        //工廠的ip連接RabbitMQ隊列
        connectionFactory.setHost("110.12.247.134");
        //端口號
        connectionFactory.setPort(5672);
        connectionFactory.setVirtualHost("my_vhost");  //填寫自己
        //用戶名  填寫自己的
        connectionFactory.setUsername("admin");
        //密碼   填寫自己的
        connectionFactory.setPassword("admin");
        Connection connection = connectionFactory.newConnection();
        System.out.println(connection);
        //獲取信道
        Channel channel = connection.createChannel();
        /*生成一個隊列
        * 1.隊列的名稱
        * 2.隊列里面的消息是否持久化(磁盤) 默認情況下消息存儲在內(nèi)存當中
        * 3.該隊列是否只供一個消費者進行消費,是否進行消費共享,false只能供一個消費者,true提供給所有消費者
        * 4.是否自動刪除  最后一個消費者斷開連接以后 該隊列是否自動刪除 true自動刪除 false 不自動刪除
        * 5.其他參數(shù)
        * */
        channel.queueDeclare(QUEUE_NAME,false,false,false,null);
        //發(fā)消息
        String message="Hello World";
        /**發(fā)送一個消費
         * 1.發(fā)送到那個交換機
         * 2.路由的key值是哪個  本次是隊列的名稱
         * 3.其他參數(shù)信息
         * 4.發(fā)送消息的消息體
         * */
        channel.basicPublish("",QUEUE_NAME,null,message.getBytes());
        System.out.println("消息發(fā)送完畢");
    }
}

在這里中:

connectionFactory.setVirtualHost("my_vhost");//填寫自己的隊列名稱,如果你的為”/“則填寫''/''

mq消費者和生產(chǎn)者,java-rabbitmq,rabbitmq,分布式,Powered by 金山文檔

第三步新增消費者

public class Consumer {
    //隊列名稱
    public static final String QUEUE_NAME="hello";

    public static void main(String[] args) throws Exception {
        //創(chuàng)建一個連接工廠
        ConnectionFactory connectionFactory = new ConnectionFactory();
        //工廠的ip連接RabbitMQ隊列
        connectionFactory.setHost("110.42.247.134");
        //端口號
        connectionFactory.setPort(5672);
        connectionFactory.setVirtualHost("my_vhost");
        //用戶名
        connectionFactory.setUsername("admin");
        //密碼
        connectionFactory.setPassword("admin");
        Connection connection = connectionFactory.newConnection();
        //獲取信道
        Channel channel = connection.createChannel();
        //聲明  接受消息
        DeliverCallback deliverCallback=(consumerTag,messagee) -> {
            System.out.println(new String(messagee.getBody()));
        };
        //取消消息時的回調(diào)
        CancelCallback cancelCallback=(message)->{
            System.out.println("消費消息被中斷");
        };
        //消費者接受消息
        /*消費者消費消息
        *1.消費那個隊列
        * 2.消費成功后是否要自動應答 true 代表的是自動應答  false代表的是手動應答
        * 3.消費者未成功消費的回調(diào)
        * 4.消費者取消消費的回調(diào)
        * */
        channel.basicConsume(QUEUE_NAME,true, deliverCallback, cancelCallback);
    }
}

消息獲取成功

mq消費者和生產(chǎn)者,java-rabbitmq,rabbitmq,分布式,Powered by 金山文檔

注意如果你用的云服務器需要打開這兩個端口 5672 15672

mq消費者和生產(chǎn)者,java-rabbitmq,rabbitmq,分布式,Powered by 金山文檔

如果你使用的虛擬機則你需要關閉防火墻文章來源地址http://www.zghlxwxcb.cn/news/detail-671533.html

到了這里,關于rabbitmq消費者與生產(chǎn)者的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包