詳解Python實現(xiàn)ZeroMQ的三種基本工作模式-創(chuàng)新互聯(lián)

簡介

目前創(chuàng)新互聯(lián)建站已為數(shù)千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、雅安服務(wù)器托管、網(wǎng)站托管、服務(wù)器租用、企業(yè)網(wǎng)站設(shè)計、海林網(wǎng)站維護等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。

引用官方說法:ZMQ(以下 ZeroMQ 簡稱 ZMQ)是一個簡單好用的傳輸層,像框架一樣的一個 socket library,他使得 Socket 編程更加簡單、簡潔和性能更高。

是一個消息處理隊列庫,可在多個線程、內(nèi)核和主機盒之間彈性伸縮。

ZMQ 的明確目標是“成為標準網(wǎng)絡(luò)協(xié)議棧的一部分,之后進入 Linux 內(nèi)核”。現(xiàn)在還未看到它們的成功。但是,它無疑是極具前景的、并且是人們更加需要的“傳統(tǒng)” BSD 套接字之上的一 層封裝。ZMQ 讓編寫高性能網(wǎng)絡(luò)應(yīng)用程序極為簡單和有趣。

它跟 RabbitMQ,ActiveMQ 之類有著相當本質(zhì)的區(qū)別,ZeroMQ 根本就不是一個消息隊列服務(wù)器,更像是一組底層網(wǎng)絡(luò)通訊庫,對原有的 Socket API 加上一層封裝,使我們操作更簡便。

三種工作模式

Request-Reply 模式:

說到“請求-應(yīng)答”模式,不得不說的就是它的消息流動模型。消息流動模型指的是該模式下,必須嚴格遵守“一問一答”的方式。

發(fā)出消息后,若沒有收到回復(fù),再發(fā)出第二條消息時就會拋出異常。同樣的,對于 Rep 也是,在沒有接收到消息前,不允許發(fā)出消息。

基于此構(gòu)成“一問一答”的響應(yīng)模式。

server:

# -*- coding=utf-8 -*-

import zmq

context = zmq.Context()
socket = context.socket(zmq.REP)
socket.bind("tcp://*:5555")

while True:
 message = socket.recv()
 print("Received: %s" % message)
 socket.send("I am OK!")

網(wǎng)站欄目:詳解Python實現(xiàn)ZeroMQ的三種基本工作模式-創(chuàng)新互聯(lián)
網(wǎng)頁地址:http://muchs.cn/article36/ddcipg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、網(wǎng)站設(shè)計、企業(yè)網(wǎng)站制作自適應(yīng)網(wǎng)站、定制開發(fā)App開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站建設(shè)網(wǎng)站維護公司