python制作系统-如何用python设计电脑系统
1.python怎样获得当前系统的CPU频率和内存使用情况
2.如何基于Python构建一个可扩展的运维自动化平台
3.python模拟用户登录系统,如何两个用户输入各自的密码才能登入?
python怎样获得当前系统的CPU频率和内存使用情况
如果想自己写程序来实现的话,可以参考它们的源码。
top/free都是在procps包中(apt-get source procps)。
找到cpus_refresh()函数,你可以看到它是怎样从/proc/stat解析出CPU的使用率的。meminfo()函数则展示了如何从/proc/meminfo解析出内存的使用率(这个文件自己解析也很简单)。
如何基于Python构建一个可扩展的运维自动化平台
Django- 一个开放源代码的 Web 应用框架,由 Python 写成,用了 MVC 的软件设计模式;
rpyc- 一个 Python 实现的 RPC 和分布式计算的工具。支持同步和异步操作、回调等;
saltstack 、 ansible 、 func - 基本 Python 开发的自动化配置管理与流程控制组件;
Mysql- 是一个非常流行的关系型数据库管理系统。
二、平台架构设计
1、 OMServer 架构图
大家对这个架构应该不会感到陌生,三层结构也是目前主流的运营平台架构。
2、 架构说明
OMServer 平台为三层架构,分别为 WEB 交互层、分布式计算层、集群管理服务层。
1) 、第一层:即为 WEB 交互层,典型的 B/S 架构,以供管理员操作的交互平台,也是 OMServer 的核心,基于 Django 开发;
2) 、第二层:分布式计算层,提供与主控端的连接通道,用的是 rpyc 传输协议,协议操作流程:前端模块参数 -> 加密传输 -> 任务执行 -> 返回结果集 -> 解密输出。
3) 、第三层:集群管理服务层,整合 Python 主流的远程操作组件(支持 Saltstack 、 Anaible、 Func ),对被控端(业务服务器集群)进行管理,其中主控端可以根据不同 IDC 环境,用多地多点的管理方式,可提升冗余度及执行效率。主控端操作模块以不同 Python 文件加以区分,便于维护,可灵活定制操作逻辑及横向扩展等特点。
python模拟用户登录系统,如何两个用户输入各自的密码才能登入?
users = {'root': ['123', False], 'westos': ['456', False]}
while True:
if all([x[1] for x in users.values()]):
print('two users login successfully')
break
user = input('input user name:\t')
if not users.get(user):
print('unexist user')
continue
else:
for i in range(3):
pw = input('input password:\t')
if users[user][0] == pw:
print(f'user `{user}` login successfully')
users[user][1] = True
break
用一个字典存储username,pw以及登录状态. 10行判断是否两个人登录状态都为True,如果是,则打印并退出while. 否则13行输入username,如果name不存在,while continue; 如果存在, 进入else,输入密码,密码对则打印并修改状态.超过3次退出for进入while.
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。