python併發程式設計 佇列MQ的學習

2022-06-11 09:21:10 字數 2641 閱讀 4234

overview→totals

所有佇列的阻塞情況

ready:待消費的訊息總數

unacked:待應答的訊息總數

total:總數 ready+unacked

publish:producter pub訊息的速率。

publisher confirm:broker確認pub訊息的速率。

deliver(manual ack):customer手動確認的速率。

deliver( auto ack):customer自動確認的速率。

consumer ack:customer正在確認的速率。

redelivered:正在傳遞'redelivered'標誌集的訊息的速率。

get (manual ack):響應basic.get而要求確認的訊息的傳輸速率。

get (auto ack):響應於basic.get而傳送不需要確認的訊息的速率。

return:將basic.return傳送給producter的速率。

disk read:queue從磁碟讀取訊息的速率。

disk write:queue從磁碟寫入訊息的速率。

整體角色的個數

connections:client的tcp連線的總數。

channels:通道的總數。

exchange:交換器的總數。

queues:佇列的總數。

consumers:消費者的總數。

overview→nodes

broker的屬性

name:broker名稱

file descriptors:broker開啟的檔案描述符和限制。

socket descriptors:broker管理的網路套接字數量和限制。當限制被耗盡時,rabbitmq將停止接受新的網路連線。

erlang processes:erlang啟動的程序數。

memory:當前broker占用的記憶體。

disk space:當前broker占用的硬碟。

uptime:當前broker持續執行的時長。

info:集群的資訊。

reset stats:重啟單節點或整個集群。

overview->export definitions

定義由使用者,虛擬主機,許可權,引數,交換,佇列和繫結組成。 它們不包括佇列的內容或集群名稱。 獨佔佇列不會被匯出。

overview->import definitions

匯入的定義將與當前定義合併。 如果在匯入過程中發生錯誤,則所做的任何更改都不會回滾。

connections

連線的屬性

virtual host:所屬的虛擬主機。

name:名稱。

user name:使用的使用者名稱。

state:當前的狀態,running:執行中;idle:空閒。

ssl/tls:是否使用ssl進行連線。

protocol:使用的協議。

channels:建立的channel的總數。

from client:每秒發出的資料報。

to client:每秒收到的資料報。

channels當前連線所有建立的通道

通道的屬性

channel:名稱。

node:節點名稱。

virtual host:所屬的虛擬主機。

user name:使用的使用者名稱。

mode:渠道保證模式。 可以是以下之一,或者不是:c: confirm。t:transactional(事務)。

state :當前的狀態,running:執行中;idle:空閒。

unconfirmed:待confirm的訊息總數。

prefetch:設定的prefetch的個數。

unacker:待ack的訊息總數。

publish:producter pub訊息的速率。

confirm:producter confirm訊息的速率。

deliver/get:consumer 獲取訊息的速率。

ack:consumer ack訊息的速率。

exchanges

交換器屬性

virtual host:所屬的虛擬主機。

name:名稱。

type:exchange type,

features:功能。 可以是以下之一,或者不是:d: 持久化。t:internal,存在改功能表示這個exchange不可以被client用來推送訊息,僅用來進行exchange和exchange之間的繫結,否則可以推送訊息也可以繫結。

message rate in:訊息進入的速率。

message rate out:訊息出去的速率。

queues

佇列的屬性

virtual host:所屬的虛擬主機。

name:名稱。

features:功能。 可以是以下之一,或者不是:d: 持久化。

state:當前的狀態,running:執行中;idle:空閒。

ready:待消費的訊息總數。

unacked:待應答的訊息總數。

total:總數 ready+unacked。

incoming:訊息進入的速率。

deliver/get:訊息獲取的速率。

ack:訊息應答的速率。

python 併發程式設計 佇列

1.佇列 from multiprocessing import queue q queue 5 建立佇列物件,佇列大小為5,佇列中只能存放5個元素 q.put 1 往佇列中新增元素 q.put 2 q.put 3 q.put 4 q.put 5 print q.full 檢測佇列是否滿了 prin...

併發程式設計之併發佇列

jdk 中提供了一系列場景的併發安全佇列。總的來說,按照實現方式的不同可分為阻塞佇列和非阻塞佇列,前者使用鎖實現,而後者則使用cas 非阻塞演算法實現。1 非阻塞佇列 concurrentlinkedqueue concurrentlinkedqueue是無界非阻塞佇列,內部使用單項鍊表實現 其中有...

併發程式設計 阻塞佇列BlockingQueue

在佇列中插入乙個佇列元素稱為入隊,從佇列中刪除乙個佇列元素稱為出隊。因為佇列只允許在一端插入,在另一端刪除,所以只有最早進入佇列的元素才能最先從佇列中刪除,故佇列又稱為先進先出 fifo first in first out 線性表。1 支援阻塞的插入方法 意思是當佇列滿時,佇列會阻塞插入元素的執行...