您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關python中demo有什么用,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
DEMO是"demonstration"的縮寫。DEMO的中文含意為“示范”、“展示”、“樣片”、“樣稿”、“原型”,常被用來稱呼具有示范或展示功能及意味的事物。
例:python簡單分布式demo
A服務器是master,B服務器為worker。
A服務器上執行taskManger.py
# coding:utf-8 import random,time,Queue from multiprocessing.managers import BaseManager #實現第一步:建立task_queue和result_queue,用來存放任務和結果 task_queue=Queue.Queue() result_queue=Queue.Queue() class Queuemanager(BaseManager): pass #實現第二步:把創建的兩個隊列注冊在網絡上,利用register方法,callable參數關聯了Queue對象, # 將Queue對象在網絡中暴露 Queuemanager.register('get_task_queue',callable=lambda:task_queue) Queuemanager.register('get_result_queue',callable=lambda:result_queue) #實現第三步:綁定端口8001,設置驗證口令‘qiye’。這個相當于對象的初始化 manager=Queuemanager(address=('',8001),authkey='lsf') #實現第四步:啟動管理,監聽信息通道 manager.start() #實現第五步:通過管理實例的方法獲得通過網絡訪問的Queue對象 task=manager.get_task_queue() result=manager.get_result_queue() #實現第六步:添加任務 for url in ["ImageUrl_"+str(i) for i in range(10)]: print 'put task %s ...' %url task.put(url) #獲取返回結果 print 'try get result...' for i in range(10): print 'result is %s' %result.get(timeout=10) #關閉管理 manager.shutdown()
B服務器上執行worker的腳本taskWorker.py
#coding:utf-8 import time from multiprocessing.managers import BaseManager # 創建類似的QueueManager: class QueueManager(BaseManager): pass # 實現第一步:使用QueueManager注冊獲取Queue的方法名稱 QueueManager.register('get_task_queue') QueueManager.register('get_result_queue') # 實現第二步:連接到服務器: server_addr = '127.0.0.1' print('Connect to server %s...' % server_addr) # 端口和驗證口令注意保持與服務進程設置的完全一致: m = QueueManager(address=(server_addr, 8001), authkey='lsf') # 從網絡連接: m.connect() # 實現第三步:獲取Queue的對象: task = m.get_task_queue() result = m.get_result_queue() # 實現第四步:從task隊列取任務,并把結果寫入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) # 處理結束: print('worker exit.')
關于python中demo有什么用就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。