python中demo有什么用

這篇文章將為大家詳細講解有關(guān)python中demo有什么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計、網(wǎng)站制作、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)宜都,10多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):13518219792

DEMO是"demonstration"的縮寫。DEMO的中文含意為“示范”、“展示”、“樣片”、“樣稿”、“原型”,常被用來稱呼具有示范或展示功能及意味的事物。

例:python簡單分布式demo

A服務(wù)器是master,B服務(wù)器為worker。

A服務(wù)器上執(zhí)行taskManger.py

# coding:utf-8

import random,time,Queue
from multiprocessing.managers import BaseManager
#實現(xiàn)第一步:建立task_queue和result_queue,用來存放任務(wù)和結(jié)果

task_queue=Queue.Queue()
result_queue=Queue.Queue()

class Queuemanager(BaseManager):
    pass
#實現(xiàn)第二步:把創(chuàng)建的兩個隊列注冊在網(wǎng)絡(luò)上,利用register方法,callable參數(shù)關(guān)聯(lián)了Queue對象,
# 將Queue對象在網(wǎng)絡(luò)中暴露
Queuemanager.register('get_task_queue',callable=lambda:task_queue)
Queuemanager.register('get_result_queue',callable=lambda:result_queue)

#實現(xiàn)第三步:綁定端口8001,設(shè)置驗證口令‘qiye’。這個相當于對象的初始化
manager=Queuemanager(address=('',8001),authkey='lsf')

#實現(xiàn)第四步:啟動管理,監(jiān)聽信息通道
manager.start()

#實現(xiàn)第五步:通過管理實例的方法獲得通過網(wǎng)絡(luò)訪問的Queue對象
task=manager.get_task_queue()
result=manager.get_result_queue()

#實現(xiàn)第六步:添加任務(wù)
for url in ["ImageUrl_"+str(i) for i in range(10)]:
    print 'put task %s ...' %url
    task.put(url)
#獲取返回結(jié)果
print 'try get result...'
for i in range(10):
    print 'result is %s' %result.get(timeout=10)
#關(guān)閉管理
manager.shutdown()

B服務(wù)器上執(zhí)行worker的腳本taskWorker.py

#coding:utf-8
import time
from multiprocessing.managers import BaseManager


# 創(chuàng)建類似的QueueManager:
class QueueManager(BaseManager):
    pass

# 實現(xiàn)第一步:使用QueueManager注冊獲取Queue的方法名稱
QueueManager.register('get_task_queue')
QueueManager.register('get_result_queue')
# 實現(xiàn)第二步:連接到服務(wù)器:
server_addr = '127.0.0.1'
print('Connect to server %s...' % server_addr)
# 端口和驗證口令注意保持與服務(wù)進程設(shè)置的完全一致:
m = QueueManager(address=(server_addr, 8001), authkey='lsf')
# 從網(wǎng)絡(luò)連接:
m.connect()
# 實現(xiàn)第三步:獲取Queue的對象:
task = m.get_task_queue()
result = m.get_result_queue()
# 實現(xiàn)第四步:從task隊列取任務(wù),并把結(jié)果寫入result隊列:
while(not task.empty()):
        image_url = task.get(True,timeout=5)
        print('run task download %s...' % image_url)
        time.sleep(1)
        result.put('%s--->success'%image_url)

# 處理結(jié)束:
print('worker exit.')

關(guān)于python中demo有什么用就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

新聞名稱:python中demo有什么用
當前地址:http://muchs.cn/article22/jpghcc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷外貿(mào)建站、建站公司App開發(fā)、用戶體驗、面包屑導(dǎo)航

廣告

聲明:本網(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)站托管運營