国产欧美日韩第一页|日本一二三不卡视频|在线精品小视频,亚洲第一免费播放区,metcn人体亚洲一区,亚洲精品午夜视频

三、連接RabbitMQ實(shí)例

  • 在創(chuàng)建RabbitMQ實(shí)例后,您需要手動(dòng)連接至RabbitMQ實(shí)例管理數(shù)據(jù)或?qū)?yīng)用服務(wù)器連接至數(shù)據(jù)庫(kù)進(jìn)行業(yè)務(wù)部署。

白名單設(shè)置

  • 我們需要把我們?cè)品?wù)器的IP設(shè)置添加如白名單,這樣才能正常的進(jìn)行應(yīng)用服務(wù)器和RabbitMQ直接的正常通信以及使用在線管理界面查看。

1、在云數(shù)據(jù)庫(kù)管理面板中的RabbitMQ的白名單中進(jìn)行添加

image-95.png

2、在白名單添加面板中填入名稱信息、相應(yīng)的規(guī)則、對(duì)應(yīng)關(guān)聯(lián)的實(shí)例。添加后記得啟用規(guī)則。

  • 這里的規(guī)則指的是對(duì)需要連接IP信息進(jìn)行添加,默認(rèn)攔截所有IP。

image-96.png

image-97.png

初始化設(shè)置RabbitMQ登錄用戶

  • RabbitMQ實(shí)例默認(rèn)創(chuàng)建后需要手動(dòng)重置用戶密碼信息。在實(shí)例列表中找到對(duì)應(yīng)實(shí)例,在詳情頁(yè)面中進(jìn)行實(shí)例密碼重置

image-98.png

image-99.png

image-100.png

建立Vhost

  • Vhost管理面板中添加一個(gè)新的Vhost進(jìn)行使用。


image-101.png

image-102.png

image-103.png

測(cè)試實(shí)例

1、登錄我們的應(yīng)用服務(wù)器(以Linux為例),測(cè)試網(wǎng)絡(luò)端口情況(如:telnet、tcping)。

image-16.png

2、安裝python3及相應(yīng)擴(kuò)展。

  • 本次測(cè)試使用python進(jìn)行操作示范。

yum install python3 -y

image-105.png

安裝好了后安裝擴(kuò)展,命令如下:

pip3 install pika

image-104.png

3、編寫創(chuàng)建生產(chǎn)者python代碼,注意使用到RabbitMQ用戶名和密碼,連接IP地址和Vhost名稱。保存為producer.py

import pika
# -*- coding: utf-8 -*-
# 設(shè)置 RabbitMQ 服務(wù)器的用戶名和密碼
credentials = pika.PlainCredentials('用戶名', '密碼')

# 連接到 RabbitMQ 服務(wù)器
connection = pika.BlockingConnection(pika.ConnectionParameters('連接IP地址', virtual_host='Vhost名字', credentials=credentials))

channel = connection.channel()

# 聲明一個(gè)隊(duì)列
channel.queue_declare(queue='hello')

# 發(fā)送消息
channel.basic_publish(exchange='',
                      routing_key='hello',
                      body='Hello World!')

print(" [x] Sent 'Hello World!'")
connection.close()

4、編寫消費(fèi)者者python代碼,注意使用到RabbitMQ用戶名和密碼,連接IP地址和Vhost名稱。保存為consumer.py

import pika
# -*- coding: utf-8 -*-
# 設(shè)置 RabbitMQ 服務(wù)器的用戶名和密碼
credentials = pika.PlainCredentials('用戶名', '密碼')

# 連接到 RabbitMQ 服務(wù)器
connection = pika.BlockingConnection(pika.ConnectionParameters('連接IP地址', virtual_host='Vhost名字', credentials=credentials))
channel = connection.channel()

# 聲明同樣的隊(duì)列
channel.queue_declare(queue='hello')

# 定義回調(diào)函數(shù),處理接收到的消息
def callback(ch, method, properties, body):
    print(f" [x] Received {body}")

# 指定消費(fèi)者,監(jiān)聽隊(duì)列
channel.basic_consume(queue='hello',
                      on_message_callback=callback,
                      auto_ack=True)

print(' [*] Waiting for messages. To exit press CTRL+C')
channel.start_consuming()

6、開始運(yùn)行

python3 producer.py
python3 consumer.py

image-106.png


提交成功!非常感謝您的反饋,我們會(huì)繼續(xù)努力做到更好!

這條文檔是否有幫助解決問題?

非常抱歉未能幫助到您。為了給您提供更好的服務(wù),我們很需要您進(jìn)一步的反饋信息:

在文檔使用中是否遇到以下問題: