当前位置: 首页 > wzjs >正文

网站建设面试自我介绍工程项目管理软件排名

网站建设面试自我介绍,工程项目管理软件排名,wordpress 中型网站,怎样在拼多多平台上卖货deepseek 1、安装依赖2、psutil库3、streamlit库4、实战4.1 单机CPU和内存使用率监控4.2 多机CPU和内存使用率监控 1、安装依赖 /usr/bin/python3 -m pip install psutil streamlit2、psutil库 psutil是一个跨平台的Python库,用于获取系统使用情况的信息&#xf…

deepseek

  • 1、安装依赖
  • 2、psutil库
  • 3、streamlit库
  • 4、实战
    • 4.1 单机CPU和内存使用率监控
    • 4.2 多机CPU和内存使用率监控

1、安装依赖

/usr/bin/python3 -m pip install  psutil streamlit

2、psutil库

psutil是一个跨平台的Python库,用于获取系统使用情况的信息,包括CPU、内存、磁盘和进程等。主要用途是进行系统监控、分析和限制流程资源以及管理正在运行的流程。

3、streamlit库

streamlit官方文档 开源框架,支持用python实现前端页面。

4、实战

4.1 单机CPU和内存使用率监控

import psutil
import time
import streamlit as st
from datetime import datetime# 初始化 Streamlit 页面
st.set_page_config(page_title="资源监控看板", layout="wide")
st.title("实时 CPU 和内存使用率监控")# 初始化数据存储(使用 Streamlit 的 session_state 持久化数据)
if "data" not in st.session_state:st.session_state.data = {"timestamps": [],"cpu_usages": [],"mem_usages": []}# 定义获取 CPU 和内存使用率的函数
def get_system_usage():"""获取当前 CPU 和内存使用率"""cpu_percent = psutil.cpu_percent(interval=1)mem_percent = psutil.virtual_memory().percentreturn cpu_percent, mem_percent# 创建页面布局
col1, col2 = st.columns(2)# 实时数据展示区域
with col1:st.subheader("实时数值")cpu_metric = st.metric(label="CPU 使用率", value="0%")mem_metric = st.metric(label="内存使用率", value="0%")# 图表展示区域
with col2:st.subheader("历史趋势")chart_placeholder = st.empty()# 持续更新数据
while True:# 获取最新数据cpu, mem = get_system_usage()if cpu > 90:st.error("CPU 使用率超过 90%!")if mem > 90:st.error("内存使用率超过 90%!")current_time = datetime.now().strftime("%H:%M:%S")# 更新数据存储(保留最近 60 个点)st.session_state.data["timestamps"].append(current_time)st.session_state.data["cpu_usages"].append(cpu)st.session_state.data["mem_usages"].append(mem)if len(st.session_state.data["timestamps"]) > 60:st.session_state.data["timestamps"] = st.session_state.data["timestamps"][-60:]st.session_state.data["cpu_usages"] = st.session_state.data["cpu_usages"][-60:]st.session_state.data["mem_usages"] = st.session_state.data["mem_usages"][-60:]# 更新实时指标cpu_metric.metric(label="CPU 使用率", value=f"{cpu}%")mem_metric.metric(label="内存使用率", value=f"{mem}%")# 更新折线图chart_placeholder.line_chart({"CPU (%)": st.session_state.data["cpu_usages"],"Memory (%)": st.session_state.data["mem_usages"]},height=400,use_container_width=True)# 间隔 1 秒time.sleep(1)

运行应用:

/usr/bin/python3  -m streamlit  run hhh.py

结果结果:
在这里插入图片描述

4.2 多机CPU和内存使用率监控

import time
import psutil
import pandas as pd
import streamlit as st
from datetime import datetime
from paramiko import SSHClient, AutoAddPolicy# ======================
# 配置区(需修改以下信息)
# ======================
MACHINES = {"服务器A": {"hostname": "192.168.3.255","port": 22,"username": "user","password": "password","use_local": False  # 是否本地机器},"服务器B": {"hostname": "10.179.89.143","username": "ubuntu","key_filename": "/path/to/key.pem","use_local": False}
}# ======================
# 核心功能实现
# ======================
class MachineMonitor:def __init__(self):self.init_session_data()def init_session_data(self):"""初始化数据存储"""if "monitor_data" not in st.session_state:st.session_state.monitor_data = pd.DataFrame(columns=["machine", "timestamp", "cpu", "mem"])def get_local_usage(self):"""获取本地机器资源使用率"""cpu = psutil.cpu_percent(interval=1)mem = psutil.virtual_memory().percentreturn cpu, memdef get_remote_usage(self, machine_config):"""通过SSH获取远程机器资源"""try:with SSHClient() as client:client.set_missing_host_key_policy(AutoAddPolicy())client.connect(**{k: v for k, v in machine_config.items()if k not in ['use_local']})# 执行命令获取数据(兼容不同Linux发行版)stdin, stdout, stderr = client.exec_command("echo 'CPU: $(top -bn1 | grep Cpu | awk '{print $2}')%; " +"MEM: $(free -m | awk '/Mem:/ {printf \"%.1f\", $3/$2*100}')%'")output = stdout.read().decode().strip()# 解析数据cpu = float(output.split("CPU: ")[1].split("%")[0])mem = float(output.split("MEM: ")[1].split("%")[0])return cpu, memexcept Exception as e:st.error(f"连接失败: {str(e)}")return 0.0, 0.0def collect_data(self):"""收集所有机器数据"""new_data = []for machine_name, config in MACHINES.items():if config.get("use_local"):cpu, mem = self.get_local_usage()else:cpu, mem = self.get_remote_usage(config)new_data.append({"machine": machine_name,"timestamp": datetime.now().strftime("%H:%M:%S"),"cpu": cpu,"mem": mem})# 更新数据new_df = pd.DataFrame(new_data)st.session_state.monitor_data = pd.concat([st.session_state.monitor_data, new_df]).drop_duplicates(keep="last")# 保留最近100条记录if len(st.session_state.monitor_data) > 100:st.session_state.monitor_data = st.session_state.monitor_data.iloc[-100:]# ======================
# Streamlit 界面
# ======================
def main():st.set_page_config(page_title="多机器监控看板", layout="wide")st.title("多机器资源监控系统")monitor = MachineMonitor()refresh_rate = st.sidebar.slider("刷新频率(秒)", 1, 10, 2)# 实时数据展示monitor.collect_data()# 为每个机器创建图表for machine in MACHINES.keys():with st.expander(f"🔧 {machine} 监控详情", expanded=True):col1, col2 = st.columns(2)# 实时数值with col1:latest = st.session_state.monitor_data[st.session_state.monitor_data.machine == machine].iloc[-1]st.metric("CPU使用率", f"{latest.cpu:.1f}%")st.metric("内存使用率", f"{latest.mem:.1f}%")# 历史图表with col2:chart_data = st.session_state.monitor_data[st.session_state.monitor_data.machine == machine]st.line_chart(chart_data,x="timestamp",y=["cpu", "mem"],height=200,use_container_width=True)# 自动刷新time.sleep(refresh_rate)st.rerun()if __name__ == "__main__":main()

运行结果:


文章转载自:

http://P7r0YqWf.ysdwq.cn
http://bLlSOWre.ysdwq.cn
http://i5wurm6J.ysdwq.cn
http://j8JtQ8h3.ysdwq.cn
http://fV7mPwFy.ysdwq.cn
http://PaCkKU6k.ysdwq.cn
http://agYr13Cx.ysdwq.cn
http://vZXisVhK.ysdwq.cn
http://RuanYt7V.ysdwq.cn
http://JBs96mqF.ysdwq.cn
http://5ihEPGEC.ysdwq.cn
http://lhMQ2a8o.ysdwq.cn
http://uX4RlrbC.ysdwq.cn
http://4D2HeOae.ysdwq.cn
http://UfsQyCo4.ysdwq.cn
http://3XPWkjLf.ysdwq.cn
http://Dhj6eLc2.ysdwq.cn
http://qJBEqPYv.ysdwq.cn
http://iSIWeQVr.ysdwq.cn
http://yLCgfgVx.ysdwq.cn
http://tcwlFOBa.ysdwq.cn
http://ljjI2qDC.ysdwq.cn
http://yd2GD9ok.ysdwq.cn
http://lIqTeZkD.ysdwq.cn
http://eSey2Ham.ysdwq.cn
http://0zEeXgWZ.ysdwq.cn
http://08rEgqfe.ysdwq.cn
http://Ds3MSRX8.ysdwq.cn
http://bLZALlYK.ysdwq.cn
http://vLQlBVfi.ysdwq.cn
http://www.dtcms.com/wzjs/728721.html

相关文章:

  • 网站建设的基本步骤和过程东莞有多少个镇区
  • 怎么自做网站中国建设网站轨道自检验收报告表
  • 如何做外贸营销型网站推广网站推广培训哪里好
  • 校园网站的作用网站开发工程师和软件工程
  • 网站制作介绍如何做行业平台网站
  • 网站建设后台管理泉州模板网站建站
  • 那个网站做二手买卖的手机访问网站页面丢失
  • 网站内容管理系统怎么用常见的搜索引擎有哪些
  • 松江网站建设公司有网页源码 怎么做网站
  • 石大远程网页设计与网站建设答案互联网公司名字大全参考
  • 浙江省建设银行网站关于公司网站怎么做
  • 莱州哪有做网站的微信分销是什么
  • 手机免费建设网站制作网站 建立目录出错
  • 网站建设 起飞网站管理助手
  • c#做交易网站东莞网站设计的公司
  • 可以直接进入网站的正能量照片赣州企业网
  • phpcms网站打开空白郴州网签查询
  • 网站维护收费如何用python开发网页
  • 自己建网站百度到吗前端开发和网站建设
  • 石家庄市城乡建设学校网站建立网站时要采用一定的链接结构
  • 东莞龙舟制作技艺建湖网站优化公司
  • 在线模版下载网站网站建设頰算
  • 赣州网站建设哪家便宜视频网站代理
  • 网站图片设置链接html 动漫网站
  • 手机下载视频网站模板下载失败网站后台管理系统制作教程
  • 长沙哪里有网站制作微网站模板怎么用
  • 海南七星彩网站建设做体育类网站素材
  • seo外链高质量网站网站制作的公
  • 网站开发与运营怎么查询企业邮箱账号
  • 洛阳建站哪家好优设网简介