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

Linux 之六:系统性能监控和挂载

系统性能

Linux系统中,有许多命令用于监测和分析性能指标。以下是一些常用的Linux性能分析命令:

  1. top:实时查看并监控CPU、内存以及各个进程的资源占用情况。
  2. htop(需要安装):一个增强版的 top 命令,提供了彩色界面和更友好的交互体验。
  3. vmstat:报告虚拟内存统计信息,包括进程、内存、swap、IO和CPU使用情况。
  4. mpstat:多处理器系统上的CPU利用率报告。
  5. iostat:显示磁盘I/O统计信息,可以用来监控硬盘的读写负载。
  6. pidstat:按进程统计CPU、内存、I/O等资源使用状况。
  7. free:显示当前系统的内存使用状态,包括物理内存、交换空间及内核缓冲区等。
  8. vmstat -s 或 sar -r:查看内存详细统计信息。
  9. dstat(需要安装):综合性的系统资源统计工具,它可以同时展示CPU、内存、磁盘、网络等多种资源的使用情况。
  10. uptime:查看系统运行时间以及平均负载。

top

实时查看并监控CPU、内存以及各个进程的资源占用情况。

[root@zhang opt]# top
top - 15:51:31 up  1:23,  1 user,  load average: 0.00, 0.01, 0.05
Tasks: 164 total,   2 running, 162 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.3 us,  0.3 sy,  0.0 ni, 99.3 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem :  1863076 total,   799016 free,   529068 used,   534992 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.  1133920 avail Mem PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND               2687 root      20   0       0      0      0 S  0.3  0.0   0:01.42 kworker/0:3           1 root      20   0  128276   6904   4192 S  0.0  0.4   0:01.77 systemd               2 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kthreadd              4 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H          6 root      20   0       0      0      0 S  0.0  0.0   0:00.15 ksoftirqd/0           7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0           8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh                9 root      20   0       0      0      0 S  0.0  0.0   0:00.45 rcu_sched             10 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 lru-add-drain         11 root      rt   0       0      0      0 S  0.0  0.0   0:00.03 watchdog/0            13 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kdevtmpfs             14 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 netns                 15 root      20   0       0      0      0 S  0.0  0.0   0:00.00 khungtaskd            16 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 writeback             17 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kintegrityd           18 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset                19 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset                20 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset                21 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kblockd               22 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 md  

解释说明

第一行,任务队列信息,同 uptime 命令的执行结果

系统时间:07:27:05

运行时间:up 1:57 min,

当前登录用户: 3 user

负载均衡(uptime) load average: 0.00, 0.00, 0.00

average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。

load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了

第二行,Tasks — 任务(进程)

总进程:150 total, 运行:1 running, 休眠:149 sleeping, 停止: 0 stopped, 僵尸进程: 0 zombie

第三行,cpu状态信息

%Cpu(s): 0.3 us, 0.3 sy, 0.0 ni, 99.3 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st

0.3%us【user space】— 用户空间占用CPU的百分比。

0.3%sy【sysctl】— 内核空间占用CPU的百分比。

0.0%ni【】— 改变过优先级的进程占用CPU的百分比

99.3%id【idolt】— 空闲CPU百分比

0.0%wa【wait】— IO等待占用CPU的百分比

0.0%hi【Hardware IRQ】— 硬中断占用CPU的百分比

0.0%si【Software Interrupts】— 软中断占用CPU的百分比

第四行,内存状态

1863076 total, 799016 free, 529068 used, 534992 buff/cache

【缓存的内存量】

第五行,swap交换分区信息

2097148 total, 2097148 free, 0 used. 1133920 avail Mem【缓冲的交换区总量】

备注:

可用内存=free + buffer + cached

对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了。

第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,

第四行中空闲内存总量(free)是内核还未纳入其管控范围的数量。

纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。

第六行,空行

第七行以下:各进程(任务)的状态监控

PID — 进程id

USER — 进程所有者

PR — 进程优先级

NI — nice值。负值表示高优先级,正值表示低优先级

VIRT — 进程使用的虚拟内存总量,单位kb。VIRT=SWAP+RES

RES — 进程使用的、未被换出的物理内存大小,单位kb。RES=CODE+DATA

SHR — 共享内存大小,单位kb

S —进程状态。D=不可中断的睡眠状态 R=运行 S=睡眠 T=跟踪/停止 Z=僵尸进程

%CPU — 上次更新到现在的CPU时间占用百分比

%MEM — 进程使用的物理内存百分比

TIME+ — 进程使用的CPU时间总计,单位1/100秒

COMMAND — 进程名称(命令名/命令行)

pidstat

按进程统计CPU、内存、I/O等资源使用状况。

[root@node1 ~]# pidstat
Linux 3.10.0-1062.el7.x86_64 (node1)     03/09/2024     _x86_64_    (2 CPU)02:41:40 PM   UID       PID    %usr %system  %guest    %CPU   CPU  Command
02:41:40 PM     0         1    0.00    0.04    0.00    0.04     0  systemd
02:41:40 PM     0         2    0.00    0.00    0.00    0.00     0  kthreadd
02:41:40 PM     0         6    0.00    0.00    0.00    0.00     0  ksoftirqd/0
02:41:40 PM     0         7    0.00    0.00    0.00    0.00     0  migration/0
02:41:40 PM     0         9    0.00    0.04    0.00    0.04     1  rcu_sched
02:41:40 PM     0        11    0.00    0.00    0.00    0.00     0  watchdog/0
02:41:40 PM     0        12    0.00    0.00    0.00    0.00     1  watchdog/1
02:41:40 PM     0        13    0.00    0.00    0.00    0.00     1  migration/1
02:41:40 PM     0        14    0.00    0.02    0.00    0.02     1  ksoftirqd/1
02:41:40 PM     0        20    0.00    0.00    0.00    0.00     0  khungtaskd
02:41:40 PM     0        35    0.00    0.01    0.00    0.01     0  kswapd0
02:41:40 PM     0        37    0.00    0.00    0.00    0.00     0  khugepaged
02:41:40 PM     0       102    0.00    0.00    0.00    0.00     0  kauditd
02:41:40 PM     0       235    0.00    0.00    0.00    0.00     1  scsi_eh_0
02:41:40 PM     0       276    0.00    0.00    0.00    0.00     0  irq/16-vmwgfx
02:41:40 PM     0       331    0.00    0.01    0.00    0.01     0  xfsaild/sda3
02:41:40 PM     0       332    0.00    0.00    0.00    0.00     0  kworker/0:1H
02:41:40 PM     0       416    0.00    0.00    0.00    0.00     1  systemd-journal
02:41:40 PM     0       446    0.00    0.00    0.00    0.00     0  systemd-udevd
02:41:40 PM     0       625    0.00    0.00    0.00    0.00     0  auditd
02:41:40 PM     0       627    0.00    0.00    0.00    0.00     1  audispd
02:41:40 PM     0       629    0.00    0.00    0.00    0.00     0  sedispatch
02:41:40 PM    81       654    0.00    0.00    0.00    0.01     0  dbus-daemon
02:41:40 PM    32       655    0.00    0.00    0.00    0.00     0  rpcbind
02:41:40 PM    70       657    0.00    0.00    0.00    0.00     0  avahi-daemon
02:41:40 PM   172       658    0.00    0.00    0.00    0.00     0  rtkit-daemon
02:41:40 PM     0       659    0.00    0.01    0.00    0.01     0  irqbalance
02:41:40 PM     0       660    0.00    0.00    0.00    0.00     1  accounts-daemon
02:41:40 PM     0       662    0.02    0.00    0.00    0.02     0  rngd
02:41:40 PM     0       663    0.00    0.00    0.00    0.00     0  alsactl
02:41:40 PM     0       664    0.00    0.00    0.00    0.00     1  VGAuthService
02:41:40 PM     0       665    0.03    0.06    0.00    0.09     0  vmtoolsd
02:41:40 PM     0       666    0.00    0.00    0.00    0.00     1  udisksd
02:41:40 PM     0       668    0.00    0.00    0.00    0.00     1  systemd-logind

free

显示当前系统的内存使用状态,包括物理内存、交换空间及内核缓冲区等

[root@node1 ~]# freetotal        used        free      shared  buff/cache   available
Mem:        1863104     1121700       84232       21164      657172      555964
Swap:       2097148       18832     2078316

uptime

查看系统运行时间以及平均负载

[root@node1 ~]# uptime14:46:20 up  8:21,  3 users,  load average: 0.00, 0.02, 0.05

详细解释:

14:46:20 :当前时间

up 8:21 :上面可以看出系统开机运行时长

3 users :系统用户共3个

load average: 0.00, 0.02, 0.05:

系统最近1分钟、5分钟和15分钟的平均负载(load average: 0.23, 0.25, 0.28

mpstate

多处理器系统上的CPU利用率报告

[root@node1 ~]# mpstat
Linux 3.10.0-1062.el7.x86_64 (node1)     03/09/2024     _x86_64_    (2 CPU)02:43:23 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
02:43:23 PM  all    0.08    0.02    0.26    0.01    0.00    0.03    0.00    0.00    0.00   99.6

主机操作

立即关机

# shutdown -h now

指定 10 秒后关机

# shutdown -t 10

指定 10分钟后关机

# shutdown -h 10

重新启动计算机

# shutdown -r now

重新启动电脑

# reboot

关机

# halt

挂载

简介

在Linux操作系统中,挂载(mount)是一个核心概念,它涉及到将外部存储设备或文件系统连接到Linux的文件系统层次结构上。当一个硬盘、分区、光盘、USB闪存驱动器或者其他类型的存储设备需要被Linux系统访问时,就需要通过挂载操作将其内容暴露给系统。

在Linux中执行挂载的基本步骤如下:

  1. 识别设备:Linux会自动检测到插入的硬件设备,或者用户可以手动查询设备节点(如 /dev/sda1对应第一个磁盘的第一个主分区)。
  2. 准备挂载点:选择一个空目录作为挂载点,这个目录将成为访问设备上文件系统的入口。例如,创建或选择 /mnt/usbdrive 作为U盘的挂载点。
  3. 挂载操作:使用 mount 命令来挂载设备,命令格式通常是:
  mount 设备路径 挂载点路径

例如,挂载U盘到 /mnt/usbdrive

  sudo mount /dev/sdc1 /mnt/usbdrive

其中 /dev/sdc1 是设备文件路径,表示要挂载的具体设备分区。

  1. 访问文件系统:完成挂载后,用户就可以像访问任何其他本地目录一样访问该设备上的文件和目录了。
  2. 卸载:不再需要访问设备时,使用 umount 命令解除挂载关系以确保数据的一致性和安全移除设备:
  sudo umount /mnt/usbdrive

此外,Linux还支持多种文件系统类型,并且可以通过 -t 参数指定文件系统类型进行挂载。同时,在Linux系统中也可以通过配置文件 /etc/fstab 实现自动挂载,这样系统启动时就会自动挂载预定义的设备和文件系统。

挂载光盘

大致步骤如下:

  1. ls -l /dev |grep cdrom :

    查看存在的连接设备文件cdrom(在VM设置中选择使用镜像文件,同时,查看右下角是否点亮,没有点亮则右键>连接即可)

    上个命令后,可以看到光盘文件名字:cdrom; 然后此时,要注意连接后,虚拟机右下角光驱点击设置,选择镜像文件

  2. mount /dev/cdrom /mnt :

    把光盘挂载到/mnt目录下

  3. cd /mnt:

    去查看文件,这是可以查看到光盘下的所有文件。挂载成功!

  4. d.cd /Packages

    可以进入目录下看到很多的rpm包安装文件,可以拷贝文件到指定其他目录。

  5. cp mysql* /opt/soft 复制文件到其他目录下

  6. 卸载: umount /dev/cdrom :

    此时再查看mnt目录 则没有了光盘内容

详细步骤如下:

1)虚拟机连接上光驱

注意:点击右下角的连接,如果连接不成功,先设置。出现下图,然后选择安装的 iso 镜像文件

选择后,再去连接,就可以了

查看外围设备是否连接上 cdrom

[root@zhangpeng /]# ls -al /dev | grep cdrom
lrwxrwxrwx.  1 root root           3 Aug 16 14:43 cdrom -> sr0
crw-rw----+  1 root cdrom    21,   1 Aug 14 16:15 sg1
brw-rw----+  1 root cdrom    11,   0 Aug 16 14:43 sr0
挂载
[root@zhangpeng /]# mount /dev/cdrom /mnt
mount: /dev/sr0 is write-protected, mounting read-only
[root@zhangpeng /]# ls /mnt
CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  LiveOS  Packages  repodata  RPM-GPG-KEY-CentOS-7  RPM-GPG-KEY-CentOS-Testing-7  TRANS.TBL
[root@zhangpeng /]# 

上面表示挂载成功!再使用 ls /mnt 查看,可以看到挂载后的光盘中所有文件了。

可以再使用 du 命令查看 cdrom 中的安装包。其中 Packages 目录下存放的 CentOS7 安装的文件包。

[root@wang dev]# ls /mnt
CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  LiveOS  Packages  repodata  RPM-GPG-KEY-CentOS-7  RPM-GPG-KEY-CentOS-Testing-7  TRANS.TBL
[root@wang dev]# du /mnt
2503    /mnt/EFI/BOOT/fonts
8445    /mnt/EFI/BOOT
8448    /mnt/EFI
60362    /mnt/images/pxeboot
69069    /mnt/images
60731    /mnt/isolinux
486703    /mnt/LiveOS
3971263    /mnt/Packages
14958    /mnt/repodata
4611199    /mnt
卸载
[root@zhangpeng ~]# umount /dev/cdrom
[root@zhangpeng ~]# ls /mnt           ## 卸载成功后,再次查看,没有了
[r

相关文章:

Linux 之六:系统性能监控和挂载

系统性能 Linux系统中,有许多命令用于监测和分析性能指标。以下是一些常用的Linux性能分析命令: top:实时查看并监控CPU、内存以及各个进程的资源占用情况。htop(需要安装):一个增强版的 top 命令&#x…...

【Web】浅聊Java反序列化之C3P0——JNDI注入利用

目录 简介 原理分析 EXP 前文:【Web】浅聊Java反序列化之C3P0——URLClassLoader利用 【Web】浅聊Java反序列化之C3P0——不出网Hex字节码加载利用 简介 出网的情况下,这个C3P0的Gadget可以和fastjson,Snake YAML , JYAML,Yamlbeans , …...

Java项目:基于Springboot+vue实现的付费自习室系统设计与实现(源码+数据库+毕业论文)附含微信小程序端代码

一、项目简介 本项目是一套基于Springbootvue实现的付费自习室系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、界面美观、操作简单、…...

C++写食堂菜品管理系统

说明:本博文来自CSDN-问答板块,题主提问。 需要:学校拟开发一套食堂菜品管理系统,以便对菜品和同学们的评价进行管理,其中包含如下信息: 商户:商户名称、柜面位置、电话…… 菜品:菜品编号、菜品名称、价格、所属商户…… 学生:注册账号、昵称、电话…… 食堂里的商户…...

vue 在线预览word

1 mammoth 先找的是mammoth这个插件yarn add mammoth,版本是1,7.0 参考网上的示例使用如下: import mammoth from "mammoth"; const vHtml ref("") const readExcelFromRemoteFile (url) >{var xhr new XMLHttpRequest();xhr.open("…...

七彩虹八渐变 外贸建站公司wordpress模板

进出口水果wordpress外贸模板 漂亮水果wordpress外贸模板,做水果进出品生意的外贸公司自建站官网模板。 https://www.jianzhanpress.com/?p3516 玩具wordpress外贸模板 简洁玩具wordpress外贸模板,适合做跨境电商外贸公司使用的wordpres外贸s网站主题…...

[C++] C++生成随机数

一、简介 在C语言中常使用srand()random()的方式生成随机数,该方式并不是一个很好的随据说生成方法,一方面是因为其生成的随机数质量较低,另一方面其随机数范围也有所限制。在C11中推荐使用随机数引擎的方式生成随机数。 如何高效得生成高质…...

web开发——前端html、css、JavaScript学习总结(持续更新中.......)

目录模版 1 html:结构标签/属性文本标记: mark文本设置:删除线del / 下划线ins/ 加粗b / 强调的文本em / 重要的文本 strong超链接: a联系信息: addressdiv 定义文档中的分区或节: div行元素:spanhtml结构: main / section / articlenav表格:table html中各种标签/属性的英文扩…...

LeetCode 2044.统计按位或能得到最大值的子集数目

给你一个整数数组 nums ,请你找出 nums 子集 按位或 可能得到的 最大值 ,并返回按位或能得到最大值的 不同非空子集的数目 。 如果数组 a 可以由数组 b 删除一些元素(或不删除)得到,则认为数组 a 是数组 b 的一个 子集…...

Selenium自动化测试细节讲解

与以前瀑布式开发模式不同,现在软件测试人员具有使用自动化工具执行测试用例套件的优势,而以前,测试人员习惯于通过测试脚本执行来完成测试。 但自动化测试的目的不是完全摆脱手动测试,而是最大程度地减少手动运行的测试。自动化…...

强化学习工具箱(Matlab)

1、Get Started 1.1、MDP环境下训练强化学习智能体 MDP环境如下图 每个圆圈代表一个状态每个状态都有上或下的选择智能体从状态 1 开始智能体接收的奖励值为图中状态转移的值训练目标是最大化累计奖励 (1)创建 MDP 环境 创建一个具有 8 个状态和 2 …...

程序人生 - 爬虫者,教育也!

作为一个站长,你是不是对爬虫不胜其烦?爬虫天天来爬,速度又快,频率又高,服务器的大量资源被白白浪费。 看这篇文章的你有福了,我们今天一起来报复一下爬虫,直接把爬虫的服务器给干死机。 本文有…...

OKLink2月安全月报| 2起典型漏洞攻击案例分析

在本月初我们发布的2024年2月安全月报中提到,2月全网累计造成损失约1.03亿美元。其中钓鱼诈骗事件损失占比11.76%。 OKLink提醒大家,在参与Web3项目时,应当仔细调研项目的真实性、可靠性,提升对钓鱼网站和风险项目的甄别能力&…...

可视化表单流程编辑器为啥好用?

想要提升办公率、提高数据资源的利用率,可以采用可视化表单流程编辑器的优势特点,实现心中愿望。伴随着社会的进步和发展,提质增效的办公效果一直都是很多职场办公团队的发展需求,作为低代码技术平台服务商,流辰信息团…...

【代码】Android|获取存储权限并创建、存储文件

版本:Android 11及以上,gradle 7.0以上,Android SDK > 29 获取存储权限 获取存储权限参考:Android 11 外部存储权限适配指南及方案,这篇文章直接翻到最下面,用XXPermissions框架。它漏了这个框架的使用方…...

每日一练 | 华为认证真题练习Day196

1、在如图所示的网络中,三台交换机运行RSTP,配置情况如图所示 根据图中配置情况判断根交换机为 A. SWA B. SWB C. SWC D. 无法确定 2、如图所示,在RT1路由器上配置OSPF多进程,其中RT1的进程100通过骨干区域和RT2建立OSPF邻居&…...

如何在Linux本地搭建Tale网站并实现无公网ip远程访问

文章目录 前言1. Tale网站搭建1.1 检查本地环境1.2 部署Tale个人博客系统1.3 启动Tale服务1.4 访问博客地址 2. Linux安装Cpolar内网穿透3. 创建Tale博客公网地址4. 使用公网地址访问Tale 前言 今天给大家带来一款基于 Java 语言的轻量级博客开源项目——Tale,Tale…...

论哪个行业官网颜值普遍较高,装修设计第二,无人敢称第一。

装饰设计公司官网普遍颜值较高的原因主要包括以下几点: 1. 美学要求: 装饰设计公司本身就是从事美学和艺术的行业,他们对于视觉效果和美感有着较高的要求,因此他们的官网在设计上往往会更加注重颜值。 2. 品牌形象&#xff1a…...

Elastic Stack--08--SpringData框架

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 SpringData[官网: https://spring.io/projects/spring-data](https://spring.io/projects/spring-data) Spring Data Elasticsearch 介绍 1.SpringData-…...

华为OD机试 - 模拟数据序列化传输(Java JS Python C C++)

题目描述 模拟一套简化的序列化传输方式,请实现下面的数据编码与解码过程 编码前数据格式为 [位置,类型,值],多个数据的时候用逗号分隔,位置仅支持数字,不考虑重复等场景;类型仅支持:Integer / String / Compose(Compose的数据类型表示该存储的数据也需要编码)编码后数…...

idea大量爆红问题解决

问题描述 在学习和工作中,idea是程序员不可缺少的一个工具,但是突然在有些时候就会出现大量爆红的问题,发现无法跳转,无论是关机重启或者是替换root都无法解决 就是如上所展示的问题,但是程序依然可以启动。 问题解决…...

日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻

在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

QMC5883L的驱动

简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

高危文件识别的常用算法:原理、应用与企业场景

高危文件识别的常用算法:原理、应用与企业场景 高危文件识别旨在检测可能导致安全威胁的文件,如包含恶意代码、敏感数据或欺诈内容的文档,在企业协同办公环境中(如Teams、Google Workspace)尤为重要。结合大模型技术&…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分

一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计&#xff0c;提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合&#xff1a;各模块职责清晰&#xff0c;便于独立开发…...

Java线上CPU飙高问题排查全指南

一、引言 在Java应用的线上运行环境中&#xff0c;CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时&#xff0c;通常会导致应用响应缓慢&#xff0c;甚至服务不可用&#xff0c;严重影响用户体验和业务运行。因此&#xff0c;掌握一套科学有效的CPU飙高问题排查方法&…...