上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 81 下一页
摘要: 计划用python写一个简单的分布式调度系统,仔细分析了一下发现需要几个子系统,包括连接zk的组件,按时间调度的模块,存储用户的可执行文件的ftp服务等 今天先实现一个小目标,用python做一个FTP服务器,然后实现简单的上传下载功能。 ftp_server.py import configpar 阅读全文
posted @ 2020-09-04 14:14 Mars.wang 阅读(1146) 评论(0) 推荐(0)
摘要: 重新思考了分布式服务的分工与合作,我梳理了分布式系统的三个角色,重写了上一篇的代码. 众所周知,分布式系统中一般有三个角色,master,worker和client 1.master主服务器监视新的worker和task,将任务分配给可用的工作人员。若worker丢失,将曾经分配给丢失的worker 阅读全文
posted @ 2020-07-22 20:44 Mars.wang 阅读(549) 评论(3) 推荐(0)
摘要: 借助zookeeper可以实现服务器的注册与发现,有需求的时候调用zookeeper来发现可用的服务器,将任务均匀分配到各个服务器上去. 这样可以方便的随任务的繁重程度对服务器进行弹性扩容,客户端和服务端是非耦合的,也可以随时增加客户端. zk_server.py import threading 阅读全文
posted @ 2020-07-20 17:03 Mars.wang 阅读(668) 评论(0) 推荐(0)
摘要: zookeeper目前是构建分布式系统的重要组件 #进入zookeeper命令行 zkCli.sh #查看子节点 ls / #创建临时master节点,创建临时workers节点 create -e /master "master2.example.com:2223" create /workers 阅读全文
posted @ 2020-07-18 16:38 Mars.wang 阅读(529) 评论(0) 推荐(0)
摘要: 转:https://www.jianshu.com/p/a605fab0ab11 # encoding: UTF-8 # 系统模块 from Queue import Queue, Empty from threading import * ############################# 阅读全文
posted @ 2020-07-18 11:33 Mars.wang 阅读(405) 评论(0) 推荐(0)
摘要: 转:https://www.cnblogs.com/nulige/p/6297829.html server.py import socket import select sk=socket.socket() sk.bind(("127.0.0.1",8801)) sk.listen(5) inpu 阅读全文
posted @ 2020-07-18 11:21 Mars.wang 阅读(269) 评论(0) 推荐(0)
摘要: 转:https://www.cnblogs.com/nulige/p/6297829.html select_module.py import selectors import socket sel = selectors.DefaultSelector() def accept(sock, mas 阅读全文
posted @ 2020-07-18 10:50 Mars.wang 阅读(174) 评论(0) 推荐(0)
摘要: 实现一个简单的常驻任务是容易的,写一个while True就可以了,但是同时要能接收外界传来的参数,就稍微有点复杂. 我第一个想到的是网络编程中的server/client模式 server作为常驻进程,可以接受client传来的各种参数进行处理 服务端:server.py import socke 阅读全文
posted @ 2020-07-18 09:16 Mars.wang 阅读(638) 评论(0) 推荐(0)
摘要: 在日常的工作中,有时候会有这样的需求,需要一个常驻任务,持续的监听一个目录下文件的变化,对此作出回应. pyinotify就是这样的一个python包,使用方式如下: 一旦src.txt有新的内容,程序就可以监控到,然后将内容发送 import socket import pyinotify pos 阅读全文
posted @ 2020-07-18 08:33 Mars.wang 阅读(1265) 评论(0) 推荐(0)
摘要: 熟悉python的同学都知道,如果一个函数要求的是变长参数,传入一个list是不对的,需要把list通过*list解包才能正常使用.例如: def func(*args): for arg in args: print(arg) li=[1,3,4,7] func(li)这个结果是不对的 func( 阅读全文
posted @ 2020-07-15 14:46 Mars.wang 阅读(756) 评论(0) 推荐(0)
上一页 1 ··· 56 57 58 59 60 61 62 63 64 ··· 81 下一页