合肥的网站建设公司,百度网页版主页链接,网上商城系统平台官网,做网站可以用什么数据库介绍
对服务器的硬件、软件和网络进行实时监控和管理#xff0c;以确保服务器的性能、稳定性和安全性。它涉及到对服务器各个方面的监控#xff0c;包括但不限于CPU、内存、硬盘、网络、进程、服务等。通过这些监控#xff0c;可以及时发现和解决潜在问题#xff0c;从而避…介绍
对服务器的硬件、软件和网络进行实时监控和管理以确保服务器的性能、稳定性和安全性。它涉及到对服务器各个方面的监控包括但不限于CPU、内存、硬盘、网络、进程、服务等。通过这些监控可以及时发现和解决潜在问题从而避免服务器崩溃、性能下降或安全漏洞。
依赖
Oshi是一个免费的基于JNA的获取操作系统和硬件信息的java库Github地址是oshi(opens new window)
它的优点是不需要安装任何其他本机库并且旨在提供一种跨平台的实现来检索系统信息例如操作系统版本进程内存和CPU使用率磁盘和分区设备传感器等。
这个库可以监测的内容包括
计算机系统和固件底板 操作系统和版本/内部版本 物理核心和逻辑超线程CPU处理器组NUMA节点 系统和每个处理器的负载百分比和滴答计数器 CPU正常运行时间进程和线程 进程正常运行时间CPU内存使用率用户/组命令行 已使用/可用的物理和虚拟内存 挂载的文件系统类型可用空间和总空间 磁盘驱动器型号序列号大小和分区 网络接口IP带宽输入/输出 电池状态电量百分比剩余时间电量使用情况统计信息 连接的显示器带有EDID信息 USB设备 传感器温度风扇速度电压 也就是说配合一个前端界面完全可以搞定系统监控了。
dependencygroupIdcom.github.oshi/groupIdartifactIdoshi-core/artifactIdversion6.4.1/version
/dependencydependencygroupIdcn.hutool/groupIdartifactIdhutool-all/artifactIdversion5.8.38/version
/dependency实体类
Data
public class SystemRuntimeInfo {/*** java信息*/private JvmSpecInfo jvm;/*** 系统信息*/private OsInfo systemInfo;/*** 网络信息*/private ListNetworkIF networkInfo;/*** 用户信息*/private UserInfo userInfo;/*** cpu信息*/private CpuInfo cpuInfo;/*** 内存信息*/private GlobalMemory memoryInfo;/*** 磁盘信息*/private ListHWDiskStore diskList;}系统调用
GetMapping(/info)
public R getInfo(){// 创建一个SystemRuntimeInfo对象用于存储系统运行信息SystemRuntimeInfo sys new SystemRuntimeInfo();// 设置网络信息通过OshiUtil工具类获取网络接口信息sys.setNetworkInfo(OshiUtil.getNetworkIFs());// 设置用户信息通过SystemUtil工具类获取当前用户信息sys.setUserInfo(SystemUtil.getUserInfo());// 设置CPU信息通过OshiUtil工具类获取CPU相关信息sys.setCpuInfo(OshiUtil.getCpuInfo());// 设置内存信息通过OshiUtil工具类获取内存相关信息sys.setMemoryInfo(OshiUtil.getMemory());// 设置磁盘信息通过OshiUtil工具类获取磁盘存储相关信息sys.setDiskList(OshiUtil.getDiskStores());// 设置系统信息通过SystemUtil工具类获取操作系统相关信息sys.setSystemInfo(SystemUtil.getOsInfo());// 设置JVM信息通过SystemUtil工具类获取JVM规格信息sys.setJvm(SystemUtil.getJvmSpecInfo());// 返回成功的响应包含系统运行信息return R.success(获取成功, sys);
}返回结果
{msg: 获取成功, // 获取数据的消息表示成功code: 200, // 状态码200表示请求成功data: {jvm: { // JVM 信息Java 虚拟机name: Java Virtual Machine Specification, // JVM 名称version: 1.8, // JVM 版本vendor: Oracle Corporation // JVM 供应商},systemInfo: { // 系统信息name: Windows 10, // 操作系统名称pathSeparator: ;, // 系统路径分隔符version: 10.0, // 操作系统版本windows: true, // 是否为 Windows 操作系统mac: false, // 是否为 Mac 操作系统linux: false, // 是否为 Linux 操作系统solaris: false, // 是否为 Solaris 操作系统macOsX: false, // 是否为 MacOSX 操作系统windows10: true, // 是否为 Windows 10 操作系统fileSeparator: \\, // 文件分隔符arch: amd64, // 系统架构lineSeparator: \r\n, // 换行符irix: false, // 是否为 IRIX 操作系统windowsXP: false, // 是否为 Windows XP 操作系统windows95: false, // 是否为 Windows 95 操作系统windowsNT: false, // 是否为 Windows NT 操作系统windows8: false, // 是否为 Windows 8 操作系统windows8_1: false, // 是否为 Windows 8.1 操作系统windowsME: false, // 是否为 Windows ME 操作系统windows2000: false, // 是否为 Windows 2000 操作系统windows7: false // 是否为 Windows 7 操作系统},networkInfo: [ // 网络信息{name: wlan0, // 网络接口名称displayName: Microsoft Wi-Fi Direct Virtual Adapter #3, // 显示的适配器名称index: 6, // 网络接口的索引mtu: 1500, // 最大传输单元ifType: 71, // 接口类型macaddr: 10:5f:ad:ea:44:ef, // MAC 地址ipv6addr: [fe80:0:0:0:b61d:ae2f:9575:d731], // IPv6 地址ifAlias: 本地连接* 11, // 网络接口的别名ifOperStatus: DOWN // 接口状态DOWN表示未启用},{name: wlan1, // 网络接口名称displayName: Microsoft Wi-Fi Direct Virtual Adapter #4, // 显示的适配器名称index: 10, // 网络接口的索引mtu: 1500, // 最大传输单元ifType: 71, // 接口类型macaddr: 12:5f:ad:ea:44:ee, // MAC 地址ipv6addr: [fe80:0:0:0:bf9c:7f64:1b03:fac2], // IPv6 地址ifAlias: 本地连接* 12, // 网络接口的别名ifOperStatus: DOWN // 接口状态DOWN表示未启用},{name: eth5, // 网络接口名称displayName: VMware Virtual Ethernet Adapter for VMnet8, // 显示的适配器名称index: 17, // 网络接口的索引mtu: 1500, // 最大传输单元subnetMasks: [24], // 子网掩码ipv4addr: [172.23.4.1], // IPv4 地址ipv6addr: [fe80:0:0:0:317b:6964:e456:cf2e], // IPv6 地址ifAlias: VMware Network Adapter VMnet8, // 网络接口的别名ifOperStatus: UP // 接口状态UP表示已启用},{name: wlan3, // 网络接口名称displayName: Intel(R) Wi-Fi 6 AX101 #2, // 显示的适配器名称index: 18, // 网络接口的索引mtu: 1500, // 最大传输单元ipv4addr: [192.168.1.101], // IPv4 地址ipv6addr: [fe80:0:0:0:5877:550d:1ad8:ec56], // IPv6 地址ifAlias: WLAN 2, // 网络接口的别名ifOperStatus: UP // 接口状态UP表示已启用}],userInfo: { // 用户信息name: 13169, // 用户名language: zh, // 语言country: CN, // 国家tempDir: C:\\Users\\13169\\AppData\\Local\\Temp\\, // 临时目录homeDir: C:\\Users\\13169\\, // 用户主目录currentDir: C:\\Users\\13169\\Desktop\\r-test\\ // 当前工作目录},cpuInfo: { // CPU 信息cpuNum: 16, // CPU 核心数量cpuModel: 13th Gen Intel(R) Core(TM) i7-13620H\n 1 physical CPU package(s)\n 10 physical CPU core(s) (6 performance 4 efficiency)\n 16 logical CPU(s), // CPU 型号used: 1.33, // CPU 使用率free: 98.67, // 剩余空闲CPU百分比sys: 0.57, // 系统占用CPU百分比user: 0.76 // 用户占用CPU百分比},memoryInfo: { // 内存信息total: 34075996160, // 总内存字节available: 19033587712, // 可用内存字节virtualMemory: { // 虚拟内存信息swapTotal: 2147483648, // 交换区总量swapUsed: 98865152, // 已使用的交换区swapPagesIn: 51135606, // 交换页面输入次数swapPagesOut: 254378 // 交换页面输出次数},physicalMemory: [ // 物理内存信息{bankLabel: BANK 0, // 内存槽标签capacity: 17179869184, // 内存容量字节clockSpeed: 5600000000, // 内存时钟频率赫兹manufacturer: Crucial Technology, // 内存制造商memoryType: Unknown // 内存类型},{bankLabel: BANK 0, // 内存槽标签capacity: 17179869184, // 内存容量字节clockSpeed: 4800000000, // 内存时钟频率赫兹manufacturer: Samsung, // 内存制造商memoryType: Unknown // 内存类型}]},diskList: [ // 硬盘信息{name: \\\\.\\PHYSICALDRIVE0, // 硬盘名称model: YMTC PC41Q-512GB-B (标准磁盘驱动器), // 硬盘型号size: 512105932800, // 硬盘总大小字节reads: 3909972, // 读取操作次数writes: 12091183, // 写入操作次数writeBytes: 343877037056, // 写入的字节数readBytes: 159831356928, // 读取的字节数partitions: [ // 硬盘分区信息{name: GPT: Basic Data, // 分区名称size: 107381522432, // 分区大小字节mountPoint: C:\\ // 挂载点},{name: GPT: Basic Data, // 分区名称size: 403661914112, // 分区大小字节mountPoint: D:\\ // 挂载点}]}]}
}