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

day15-进程管理

1. 概述

  • 运行起来的软件就是进程,在内存中运行
  • 守护进程/服务:一直运行的进程

2. 僵尸进程

2.1. 僵尸进程zombie

当子进程比父进程先结束,而父进程又没有回收子进程,释放子进程占用的资源,此时子进程将成为一个僵尸进程

  • 查看系统是否有僵尸进程
ps aux | awk '$8~/Z/'

2.2. 模拟僵尸进程

# 编译
gcc zombie.c -o zombie# 后台运行
./zombie &

2.3. 结束僵尸进程

1.过滤查找僵尸进程的pid
ps aux | awk '$8~/Z/'2.查找僵尸进程的父进程pid
pstree -p3.kill终止僵尸的父进程进程
kill pid

3. 孤儿进程

对系统影响不大

某个子进程的父进程,因为特殊原因退出了,但子进程还在,子进程就是孤儿进程

解决:重启服务

4. 进程管理

4.1. kill三剑客

杀死进程

说明

kill pid

pid进程号结束对应进程

kill -9 pid

发送强制结束进程信号

kill -l

列出信号

pkill 进程名

根据进程名字过滤结束进程,容易误杀

killall

根据进程名字,用户结束进程

4.2. 后台运行

  • 前台运行:命令在运行时,无法运行其他命令,需要等待,连接断了或网络断了,前台运行的命令会结束
  • 后台运行:命令运行时不影响前台命令行

  1. &后台运行,当前shell连接中断后,后台运行的命令也结束了
# 在命令的结尾加上 & 符号
ping jd.com > ping.txt &
注意:当前shell连接中断后,后台运行的命令也结束了
  1. nohup后台运行,当前shell连接中断后,后台运行的命令正常运行
# 在命令前加上nohup命令
nohup ping jd.com &
注意:命令输出的内容会写入到当前目录的nohup.out文件中# 后台运行,指定输出文件
nohup ping jd.com > /tmp/nohup.log &

4.3. screen

# 安装screen软件
yum -y install screen# 创建screen名字的会话窗口
screen -S name
-S参数表示创建的会话名字# screen -ls 可以查看系统当前有的screen
screen -ls
There is a screen on:3823.zbl        (Detached)
1 Socket in /run/screen/S-root.# screen -r 可以恢复之前的session
screen -r 3823.zblctrl+a 松手 敲个d,临时分离会话,但是会话不会中断screen -x 可以让多个人一起共享一个session

4.4. tmux

4.4.1. 基本使用操作
tmux能达到screen的效果,而且比screen更加华丽
1.安装tmux软件
yum -y install tmux2.启动tmux
tmux new -s zbl #创建出一个名字叫做zbl的session3.再创建一个新的窗口
按ctrl+b 组合键,然后松开再按c键4.切换窗口
按ctrl+b 组合键,然后松开再按0键5.退出窗口
按ctrl+b 组合键,然后松开再按d 临时退出这个session6.查看当前所有的tmux会话
tmux ls7.回去原来的会话
tmux attach -t name# 窗格操作
tmux所有的快捷键都是以"ctrl+b"开头
" 上下分割屏幕
% 左右分割屏幕
x 关闭当前窗格
{ 当前窗格前移
} 当前窗格后移
;选择上次使用的窗格
o 选择下一个窗格,也可以使用上下左右方向键来选择
space 切换窗格布局,tmux内置了五种窗格布局
z 最大化当前窗格,再次执行可恢复原来大小
q 显示所有窗格的序号,在序号出现期间按下对应的数字,即可跳转到对应的窗格# 窗口操作
tmux所有的快捷键都是以ctrl+b开头
c 新建窗口,此时当前窗口会切换到新窗口,不影响原有窗口的状态
p 切换到上一个窗口
n 切换到下一个窗口
w 窗口列表选择,MacOS下使用^p和^n进行上下选择
& 关闭当前窗口
, 重命名窗口,可以使用中文,重命名后能在tmux状态栏更快速的识别窗口id
0 切换到0号窗口,使用其他数字id切换到对应窗口
f 根据窗口名搜索选择窗口,可模糊匹配
#如何在多个会话之间切换呢?
ctrl+b 然后↑↓←→去切换光标所在位置# 配置 ssh 登录时默认使用 tmux
1.在服务器上安装 tmux。
2.编辑服务器上当前用户的.bashrc文件
3.在文件末尾添加以下内容
if [ "$SSH_CONNECTION" != "" ] && [ -z "$TMUX" ]; thentmux attach-session || tmux new-session
fi4.保存并退出文件现在,每当您通过 ssh 连接到服务器时, tmux 会自动启动/附加到已经存在的会话中或者创建一个新会话
4.4.2. 窗格操作

5. 进程状态

Z zombie 僵尸进程
R running 运行中的进程
S sleeping 没有运行,等待着,睡眠的进程
D 不可中断进程,一般指的io(input/output速写)进程
T 后台挂起(暂停)的进程(ctrl +z),fg回到前台运行#辅助符号
+ 前台运行的进程
Ss 带有小s的表示:主进程(管理进程)
Ssl 带有小l的表示:进程支持线程,进程负责占资源,线程负责使用资源#常见组合
R+   前台运行中
S+   前台运行中,没占用cpu
Ss   主进程(管理进程)
Ssl  进程支持线程
Z    僵尸进程

6. 进程监控命令

6.1. ps命令

命令使用参数介绍:

  • a: 显示所有用户的进程,包括其他用户的进程。
  • u: 以用户为基础显示详细信息,包括用户名、进程ID、CPU利用率、内存使用等。
  • x: 显示没有控制终端的进程。
  • -e:显示所有进程,而不仅限于当前用户。
  • -f:显示完整的进程信息,包括父进程ID、CPU使用情况等

查看cpu使用排名

ps aux --sort=-%cpu

6.2. top

%Cpu(s):  0.0 us,  0.1 sy,  0.0 ni, 99.8 id,  0.0 wa,  0.0 hi,  0.1 si,  0.0 st
0.0 ni  高优先级进程占用cpu
0.0 hi  hard 硬件中断
0.1 si  soft 软件中断
0.0 st  steal 被偷的时间,被抢占的时间使用率(虚拟化有关),虚拟机的cup被宿主机或虚拟机偷了

6.3. ps与top的区别

top
  • 动态实时监控工具:持续更新显示系统中运行的进程状态。
  • 提供 CPU、内存等系统资源的整体使用情况。
  • 支持交互式操作(比如排序、筛选、杀死进程等)。
ps aux
  • 静态快照命令:只输出当前时刻所有进程的一个快照。
  • 更适合用于脚本处理或一次性查看进程信息。
  • 不提供实时更新功能。

主要区别对比表

特性

top

ps aux

是否实时更新

✅ 实时刷新(默认每秒一次)

❌ 只显示一次当前快照

是否支持交互

✅ 支持按键操作(如排序、搜索、杀进程)

❌ 不支持交互

输出格式

美化后的动态界面

简洁的文本格式,适合脚本解析

默认排序方式

按 CPU 使用率排序

按 PID 升序排列

显示内容

包括系统整体负载、CPU/内存使用等

仅显示进程列表及详细字段

资源消耗

相对更高(因为持续刷新)

更低,执行完即退出


常见用途对比

使用 top 的场景:
  • 实时监控服务器负载或性能瓶颈
  • 查看哪个进程占用 CPU 或内存过高
  • 动态观察进程变化
  • 快捷键操作(如按 P 排 CPU,按 M 排内存)
使用 ps aux 的场景:
  • 在脚本中提取特定进程的信息(例如结合 grep
  • 快速获取某个时间点的进程快照
  • 日志记录、调试分析等静态数据采集

6.4. top快捷键

M 内存使用率排序
P cpu使用率排序
空格 立刻更新(默认3S更新一次)
1 显示所有核心的cpu使用情况先按z 显示颜色 然后按x 然后按 > 或 <htop 高级的top

7. ps,top应用案例

7.1. 过滤出crond的进程或sshd进程

ps -ef | egrep 'crond|sshd'

7.2. 过滤rsyslog的进程pid

ps -ef | grep 'rsyslog' | grep -v grep | awk '{print $2}'

7.3. 取出系统登录用户数量

top -bn1 | awk 'NR==1' | awk '{print $8}'#awk的条件和动作合并写一起
top -bn1 | awk 'NR==1 {print $8}'

7.4. 取出僵尸进程数

top -bn1
-b  静止模式
n1  输出一次top -bn1 | awk 'NR==2 {print $(NF-1)}'

8. 系统负载

衡量系统繁忙程度指标

处于可运行(R,S)状态,不可中断进程(D io)数量

负载高:负载值接近或超过CPU核心总数

8.1. 模拟系统负载高

  • stress压力测试
#安装stress
yum -y install stress#模拟CUP导致的高负载高
stress --cpu 10 --timeout 1000#模拟IO导致的系统负载高
stress --io 4 --hdd 4 --hdd-bytes 1g --timeout 10000s

8.2. 排查流程

1.检查是否高2.定位cpu,io3.定位具体进程

相关文章:

day15-进程管理

1. 概述 运行起来的软件就是进程&#xff0c;在内存中运行守护进程/服务&#xff1a;一直运行的进程 2. 僵尸进程 2.1. 僵尸进程zombie 当子进程比父进程先结束&#xff0c;而父进程又没有回收子进程&#xff0c;释放子进程占用的资源&#xff0c;此时子进程将成为一个僵尸…...

抖音视频下载工具 v1.1 自用分享

用免费的公益接口用AI写了个简单的抖音视频下载工具&#xff0c;自用的&#xff0c;不支持批量下载 内置两套API&#xff0c;解析失败会自动切换&#xff0c;支持视频预览播放&#xff0c;视频截图等操作 使用方法也很简单&#xff1a; 软件打开后会监听粘贴板&#xff0c;当检…...

46、什么是Windows服务,它的⽣命周期与标准的EXE程序有什么不同?

Windows服务是一种在Windows操作系统后台运行的特殊应用程序&#xff0c;与标准的EXE程序相比&#xff0c;其生命周期在启动方式、运行持续性、用户交互、运行账户、管理方式、进程状态及开发要求等方面存在显著差异。以下是对Windows服务及其与标准EXE程序生命周期差异的详细分…...

用 UniApp 构建习惯打卡 App —— HabitLoop 开发记

我正在参加CodeBuddy「首席试玩官」内容创作大赛&#xff0c;本文所使用的 CodeBuddy 免费下载链接&#xff1a;腾讯云代码助手 CodeBuddy - AI 时代的智能编程伙伴 当我脑海中突然冒出一个念头&#xff1a;“做一个自己能每天打卡的习惯 App 吧”&#xff0c;我立刻打开了 Cod…...

NB-IoT技术深度解析:部署模式与节能机制全指南

知识点1【NB-IoT的介绍】 NB-IoT 是指Narrow Band Internet of Things&#xff0c;聚集于低功耗窄带宽广域物联网。 1、License介绍 “有牌照”&#xff08;license&#xff09;频谱&#xff0c;指的是政府或者监管机构通过拍卖&#xff0c;划拨等方式&#xff0c;授予给各个…...

Vue百日学习计划Day28-32天详细计划-Gemini版

总目标: 在 Day 28-32 深入理解 Vue 3 的响应式机制&#xff0c;熟练掌握 Composition API 中的 setup, ref, reactive, toRefs, readonly, computed, watch, watchEffect 等核心 API 的使用。 所需资源: Vue 3 官方文档 (组合式 API): https://cn.vuejs.org/guide/introducti…...

Leetcode134加油站

题目链接 134 题意图解&#xff1a; 题目给了n个节点&#xff0c;这些节点呈现环状&#xff0c;每次到一个低点要消耗cost[i]的油量。 从中我们可以得出一个结论&#xff1a;看一个点能不能到下一个点&#xff0c;就要用当前的油量减去消耗的量&#xff0c;那么gas[i] - cost…...

用算术右移实现逻辑右移及用逻辑右移实现算术右移

函数srl()用算术右移实现逻辑右移&#xff0c;函数sra()用逻辑右移实现算术右移。 程序代码 int sra(int x,int k); unsigned int srl(unsigned int x, int k);void main() {int rx1,k,x1;unsigned int rx2,x2;k3;x10x8777;x20x8777;rx1sra(x1, k);rx2srl(x2, k);while(1); }…...

箭头函数及其与普通函数区别的详细解释

一、箭头函数的基本特性 语法简洁性 箭头函数使用 > 符号定义&#xff0c;省略 function 关键字&#xff0c;适合快速定义匿名函数或简单表达式。 // 普通函数 function sum(a, b) { return a b; } // 箭头函数 const sum (a, b) > a b;若函数体为单行表达式&#x…...

Denoising Score Matching with Langevin Dynamics

在自然图像等复杂数据集中&#xff0c;真实数据往往集中分布在一个低维流形上&#xff0c;概率密度函数的梯度&#xff08;即得分函数&#xff09;难以定义与估计。为缓解该问题&#xff0c;SMLD 提出使用不同强度的高斯噪声对数据进行扰动&#xff0c;扰动后的数据不再集中于低…...

Flink的时间问题

Apache Flink 中的 时间语义&#xff08;Time Semantics&#xff09; 是流处理的核心概念之一。Flink 支持多种时间类型&#xff0c;用于控制窗口计算、事件排序和状态管理等操作。 &#x1f552; 一、Flink 时间分类 类型名称描述Processing Time处理时间每个算子基于本地系统…...

3:OpenCV—视频播放

播放来自文件或相机的视频 在本教程中&#xff0c;我将向您展示如何使用OpenCV从文件或相机/网络摄像头捕获和播放视频。尽管OpenCV没有针对视频处理进行优化&#xff0c;但它提供了一个简单的API来播放视频。在我们的OpenCV程序中&#xff0c;我们所要做的就是从视频文件或相…...

AI工程 新技术追踪 探讨

文章目录 一、核心差异维度对比二、GitHub对AI工程师的独特价值三、需要警惕的陷阱四、推荐追踪策略五、与传统开发的平衡建议 以下内容整理来自 deepseek 作为AI工程师&#xff0c;追踪GitHub开源项目 对技术成长和职业发展的影响 比传统应用开发工程师 更为显著&#xff0c;…...

C++:函数模板

所谓函数模板就是定义一个通用的函数&#xff0c;不指定具体的参数&#xff0c;用一个虚拟参数代替&#xff1b; 当函数调用时&#xff0c;会根据实参判断具体的类型。 注意&#xff1a;不要使用默认参数&#xff1b;可以重载但尽量不要重载。 #include<iostream> usi…...

一款适配国内的视频软件,畅享大屏与局域网播放

软件介绍 今天要给大家安利一款超强视频播放软件——MXPlayer。它的解码实力堪称一绝&#xff0c;市面上不管是常见的 MP4、MKV 格式&#xff0c;还是对播放设备要求极高的超高清 4K、HDR 视频&#xff0c;甚至那些鲜为人知的冷门格式&#xff0c;它统统都能流畅播放&#xff…...

SONiC系统之高速数据遥测High Frequency Telemetry

SONiC系统之高速数据遥测High Frequency Telemetry 数据遥测 这篇文章介绍了SONiC系统支持Telemetry的软件架构以及gNMI接口中Telemetry Streaming功能Dial-in和Dial-out两者模式的区别。正如该文指出的那样&#xff0c;该结构面临扩展性问题&#xff0c;当AI训练、推理等大型…...

【Java ee初阶】jvm(3)

一、双亲委派机制&#xff08;类加载机制中&#xff0c;最经常考到的问题&#xff09; 类加载的第一个环节中&#xff0c;根据类的全限定类名&#xff08;包名类名&#xff09;找到对应的.class文件的过程。 JVM中进行类加载的操作&#xff0c;需要以来内部的模块“类加载器”…...

C++ for QWidget:connect(连接)

语法&#xff1a; QObject::connect(发射信号的对象,发射的信号,接收信号的对象,接收后执行的命令) #include "mainwindow.h" #include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow) {ui-&g…...

uni-app学习笔记七-vue3事件处理

本文主要用于记录vue3中的点击事件和change事件 点击事件&#xff1a;v-on:click,可简写为click change事件&#xff0c;用于监听值发生改变的的事件处理&#xff1a;change 示例代码&#xff1a; <template><view class"box" click"onClick"…...

【C++进阶篇】C++容器完全指南:掌握set和map的使用,提升编码效率

C容器的实践与应用&#xff1a;轻松掌握set、map与multimap的区别与用法 一. 序列式容器与关联式容器1.1 序列式容器 (Sequential Containers)1.2 关联式容器 (Associative Containers) 二. set系列使用2.1 set的构造和迭代器2.2 set的增删查2.2.1 插入2.2.2 查找2.2.3 删除 2.…...

吴恩达机器学习(1)——机器学习算法分类

1、机器学习算法 1、监督学习 在实际应用中最为常见的快速进度结果 2、非监督学习 2、监督学习&#xff08;Supervised Learning&#xff09; 2.1、回归算法 [!note] 监督学习 是指学习从 x -> y 或者从输入到输出映射的算法 监督学习的关键特征是你给学习算法提供学习…...

我的创作纪念日——512天

2023 年 12 月 19 日&#xff0c;我撰写了第 1 篇记录型博客《数据结构课程设计——报数问题》&#xff0c;这是我记录一段实践经验的开始。 回望那时的自己&#xff0c;还很稚嫩&#xff0c;刚刚迈入计算机的大门不久&#xff0c;一切都显得新鲜而充满挑战。今天是我成为创作者…...

SpringBoot快速上手

1.Maven Maven是项目管理工具&#xff0c;通过pom.xml文件来获取jar包&#xff0c;而不用手动去添加jar包 引入依赖之后需要刷新maven&#xff0c;以下这两个地方都可以 中央仓库 &#xff1a; Central Repository: Maven Repository: Central 2.Spring Boot 2.1创建项目…...

自动化:批量文件重命名

自动化&#xff1a;批量文件重命名 1、前言 2、效果图 3、源码 一、前言 今天来分享一款好玩的自动化脚&#xff1a;批量文件重命名 有时候呢&#xff0c;你的文件被下载下来文件名都是乱七八糟毫无规律&#xff0c;但是当时你下载的时候没办法重名或者你又不想另存为重新重…...

低延迟与高性能的技术优势解析:SmartPlayer VS VLC Media Player

在实时视频流的应用中&#xff0c;RTSP&#xff08;Real-Time Streaming Protocol&#xff09;播放器扮演着至关重要的角色&#xff0c;尤其是在视频监控、远程医疗、直播等高实时性需求的场景中。随着行业需求的不断升级&#xff0c;对播放器的低延迟、稳定性、兼容性等方面的…...

java中的Servlet2.x详解

一、Servlet 2.x 版本演进与核心特性 Servlet 2.x 是 Java Web 开发中承上启下的重要版本系列&#xff0c;主要包括 Servlet 2.4 和 Servlet 2.5 两个子版本。以下是其核心特性与改进&#xff1a; Servlet 2.4&#xff08;2003年发布&#xff09; XML Schema 支持&#xff1a;…...

大模型deepseek如何助力数据安全管理

敏感数据识别与处理 精准定位敏感信息 &#xff1a;运用多模态识别引擎技术&#xff0c;快速扫描上传文件与输入内容&#xff0c;精准识别身份证号、银行卡号、商业合同关键信息等各类敏感数据&#xff0c;并支持金融、医疗等行业定制化规则库&#xff0c;满足不同行业的特殊需…...

【linux驱动】【设备树】按键设备树讲解

设备树你添加电源键示例。 / {gpio-keys {compatible = "gpio-keys";#address-cells = <1>;#size-cells = <0>;button@1 {label = "Power Button";linux,code = <KEY_POWER>; // 按键编码,定义在include/uapi/linux/input-event-code…...

Vibe Coding:编程中的氛围与效率的艺术

引言 在软件开发的世界里&#xff0c;我们常常关注语言特性、框架选择和算法效率&#xff0c;却较少讨论一个同样重要的因素——编程时的"氛围"&#xff08;vibe&#xff09;。Vibe Coding是一种关注开发者心理状态、工作环境和整体"感觉"的编程方法论。它…...

算法岗实习八股整理——深度学习篇(不断更新中)

目录 激活函数特征典型例子sigmod函数tanh函数补充&#xff1a;零中心化输出优势非线性特性如何提升神经网络表现 激活函数 特征 非线性&#xff1a;激活函数满足非线性时&#xff0c;才不会被单层网络替代&#xff0c;神经网络才有意义可微性&#xff1a;优化器大多数是用梯…...

Java IO及Netty框架学习小结

Netty netty官网: Netty 什么是Netty&#xff1f; Netty 是 一个异步事件驱动的网络应用程序框架&#xff0c;用于快速开发可维护的高性能协议服务器和客户端。Netty 是一个 NIO 客户端服务器框架&#xff0c;可以快速轻松地开发网络应用程序&#xff08;例如协议服务器和客…...

理想AI Talk第二季-重点信息总结

一、TL&#xff1b;DR 理想为什么要做自己的基模&#xff1a;座舱家庭等特殊VLM场景&#xff0c;deepseek/openai没有解决理想的基模参数量&#xff1a;服务端-300B&#xff0c;VLencoder-32B/3.6B&#xff0c;日常工作使用-300B&#xff0c;VLA-4B为什么自动驾驶可以达成&…...

软件架构之-论软件系统架构评估以及应用

论软件系统架构评估以及应用 摘要正文 摘要 2023年2月&#xff0c;本人所在集团公司承接了长三角地区某省渔船图纸电子化审查系统项目开发&#xff0c;该项目旨在为长三角地区渔船建造设计院&#xff0c;以及渔船图纸审查机构提供一个便捷化的服务平台。在此项目中&#xff0c;…...

Java面试实战:从Spring Boot到分布式缓存的深度探索

Java面试实战&#xff1a;从Spring Boot到分布式缓存的深度探索 场景介绍 在一家著名的互联网大厂&#xff0c;面试官老王正对求职者“水货程序员”明哥进行Java技术面试。明哥带着一点紧张和自信&#xff0c;迎接这场技术“拷问”。 第一轮&#xff1a;基础问题 老王&#…...

2025年全国青少年信息素养大赛C++小学全年级初赛试题

一、单选题 1、在C中&#xff0c;表示逻辑运算符 "或" 的是&#xff1f;&#xff08; &#xff09;&#xff08;5 分&#xff09; A&#xff0e;|| B&#xff0e;& C&#xff0e; D&#xff0e; 解析&#xff1a;||是或者&#xff0c; &&是并且 2、…...

React中巧妙使用异步组件Suspense优化页面性能。

文章目录 前言一、为什么需要异步组件&#xff1f;1. 性能瓶颈分析2. 异步组件的价值 二、核心实现方式1. React.lazy Suspense&#xff08;官方推荐&#xff09;2. 路由级代码分割&#xff08;React Router v6&#xff09; 总结 前言 在 React 应用中&#xff0c;随着功能复…...

nginx相关面试题30道

一、基础概念与核心特性 1. 什么是 Nginx&#xff1f;它的主要用途有哪些&#xff1f; 答案&#xff1a; Nginx 是一款高性能的开源 Web 服务器、反向代理服务器及负载均衡器&#xff0c;基于事件驱动的异步非阻塞架构&#xff0c;擅长处理高并发场景。 主要用途&#xff1a;…...

java中的Servlet1.x详解

Servlet 1.x 是 Java Web 开发的早期规范&#xff0c;为后续版本奠定了基础。以下是其核心特性、使用方式及与现代版本的对比分析&#xff1a; 一、Servlet 1.x 的核心特性 基础接口与实现 Servlet 1.x 的核心是 javax.servlet.Servlet 接口&#xff0c;开发者必须直接实现其五…...

给大模型“贴膏药”:LoRA微调原理说明书

一、前言&#xff1a;当AI模型开始“叛逆” 某天&#xff0c;我决定教deepseek说方言。 第一次尝试&#xff08;传统微调&#xff09;&#xff1a; 我&#xff1a;给deepseek灌了100G东北小品数据集&#xff0c;训练三天三夜。结果&#xff1a;AI确实会喊“老铁666”了…但英…...

【数字电路】第七章 脉冲波形的产生与整形电路

一、脉冲波形的产生与整形电路概述 1.矩形脉冲的获得方法 2.矩形脉冲的主要参数 3.本章所涉及的电路 4.稳态与暂稳态 电路的暂稳态实际上是通过RC电路的充放电来实现的。 5.TTL电路输入等效电路 6.TTL电路的输出等效电路 7.CMOS电路的输入等效电路 8.CMOS电路的输出等效电路 …...

React Flow 边的基础知识与示例:从基本属性到代码实例详解

本文为《React Agent&#xff1a;从零开始构建 AI 智能体》专栏系列文章。 专栏地址&#xff1a;https://blog.csdn.net/suiyingy/category_12933485.html。项目地址&#xff1a;https://gitee.com/fgai/react-agent&#xff08;含完整代码示​例与实战源&#xff09;。完整介绍…...

DB-MongoDB-00002--Workload Generator for MongoDB

## DB-MongoDB-00002–Workload Generator for MongoDB 1、介绍 Workload Generator for MongoDB was designed to help MongoDB users effortlessly generate data and simulate workloads for both sharded and non-sharded clusters. The generated workloads include s…...

buck变换器的simulink/matlab仿真和python参数设计

什么是Buck电路? BUCK电路是一种降压斩波器&#xff0c;降压变换器输出电压平均值Uo总是小于输出电压UD。通常电感中的电流是否连续&#xff0c;取决于开关频率、滤波电感L和电容C的数值。BUCK也是DC-DC基本拓扑&#xff0c;或者称为电路结构&#xff0c;是最基本的DC-DC电路…...

谷歌地球引擎GEE将多个遥感影像作为多个波段合并成一张图像并下载的方法

本文介绍在谷歌地球引擎&#xff08;Google Earth Engine&#xff0c;GEE&#xff09;中&#xff0c;下载多年的逐日的ERA5土壤湿度数据&#xff0c;并在下载时&#xff0c;将每年同月份内的每一天的图像作为一个波段加以合并的方法。 在之前的文章GEE谷歌地球引擎批量下载逐日…...

Debezium快照事件监听器系统设计

Debezium快照事件监听器系统设计 1. 系统概述 1.1 设计目标 为 Debezium 的快照过程提供可扩展的事件监听机制允许外部系统在快照过程中执行自定义逻辑提供线程安全的事件分发机制确保监听器的异常不会影响主快照流程1.2 核心功能 表快照开始事件监听表快照完成事件监听行数据…...

选择之困:如何挑选合适的 Python 环境与工具——以 Google Colaboratory 为例

引言:选择之困与 Python 的多样性 在过去的十年中,Python 编程语言以其简洁的语法、强大的功能和广泛的适用性迅速崛起,成为全球最受欢迎的编程语言之一。从数据科学到 Web 开发,从自动化脚本到人工智能,Python 无处不在。然而,这种多样性和快速发展也带来了一个显著的问…...

基于Java+MySQL+Servlet的留言系统开发全解析

本系统基于Java Web技术栈开发&#xff0c;采用前后端分离架构&#xff0c;后端通过Servlet实现业务逻辑&#xff0c;前端使用HTML/CSS/JavaScript构建交互界面。本文将详细解析系统设计思路、技术实现与核心代码&#xff0c;助您快速掌握留言系统开发精髓。 一、项目简介 本留…...

实操分享java应用容器化,使用docker作为容器工具

### 一. 目的 将现有的java应用容器化,使用docker作为容器工具。 ### 二. 配置 #### 1. Java应用中的配置 ##### a. Java子项目中的pom文件配置 ```xml <build> <plugins> <plugin> <groupId>org.spring…...

李臻20242817_安全文件传输系统项目报告_第12周

安全文件传输系统项目报告&#xff08;第 9 周&#xff09; 1. 代码链接 Gitee 仓库地址&#xff1a;https://gitee.com/li-zhen1215/homework/tree/master/Secure-file 代码结构说明&#xff1a; project-root/├── src/ # 源代码目录│ ├── main.c # 主程序入口│ ├…...

19-I2C库函数

一、IIC配置流程 IIC配置流程需要添加的库函数&#xff1a;stm32f4xx_i2c.c 1、理解电路原理图 SCL --- PB8 SDA -- PB9 使用I2C1 2、配置I2C库函数的步骤 &#xff08;1&#xff09;使能GPIOB组时钟RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOB, ENABLE);&#xff08;2…...