python日常笔记3--关于分布式任务的分配

这篇笔记探讨了Python中的分布式任务分配,主要采用master-worker架构。文章指出多进程优于多线程作为稳定性选择,并详细介绍了如何创建master.py,包括使用QueueManager初始化manager,设置IP地址和authkey确保安全。接着,worker.py的角色和如何从master接收任务也被提及。
摘要由CSDN通过智能技术生成

分布式任务分配,目前流行的就是master-worker型,也就是有个master进程(或线程)来分配任务,其余的worker进程(或线程)来处理任务。我们一般都是采取多进程分布式处理任务,因为多进程比多线程要更加的稳定(起码在python中是这样)。


首先写master.py

import queue, random, time
from multiprocessing.managers import  BaseManager

class QueueManager(BaseManager):
    pass




task_queue = queue.Queue()
result_queu = queue.Queue()
res_info = False

QueueManager.register('task_queue', callable=lambda :task_queue)
QueueManager.register('result_queue', callable=lambda :result_queu)
QueueManager.register('res_info', callable=lambda :res_info)

manager = QueueManager(address=('127.23.122.11', 5000), authkey=b'abc')
manager.start()

task = manager.task_queue()
result = manager.result_queue()
info = manager.res_info()
for i in range(10):
    n =random.randint(0,1000)
    pri
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值