对于后端要和linux打交道要掌握的点

管理运行在Linux上的Spring Boot JAR包进程,你需要掌握以下核心命令和技巧:

1.进程查找命令

查找Spring Boot进程

# 按名称查找psaux|grepjavapsaux|grepspringpsaux|grepjar# 精确查找jar包进程psaux|grep-E'\.jar$'# 查看指定端口的进程(Spring Boot常用端口)sudolsof-i :8080sudonetstat-tlnp|grep:8080

使用pgrep和pkill

# 查找进程IDpgrep -f"java.*jar"pgrep -f"spring-boot"# 按应用名查找pgrep -f"myapp.jar"

2.JAR包信息查看

查看启动命令和参数

# 查看完整的启动命令psaux|grepjava|grep-vgrep# 查看进程环境变量cat/proc/{PID}/environ|tr'\0''\n'# 查看JVM参数jcmd{PID}VM.command_line

查看JAR包路径

# 方法1:通过进程信息ls-l /proc/{PID}/exe# 方法2:通过lsof查看打开的文件sudolsof-p{PID}|grep'\.jar$'# 方法3:查看进程的工作目录ls-l /proc/{PID}/cwd

3.进程管理命令

启动Spring Boot应用

# 直接启动java -jar app.jar# 后台启动nohupjava -jar app.jar>app.log2>&1&# 使用systemd(推荐生产环境)sudosystemctl start myapp# 使用screen/tmuxscreen-S myspring java -jar app.jar

停止进程

# 优雅停止kill{PID}# 强制停止kill-9{PID}# 按名称停止pkill-f"myapp.jar"# 停止指定端口的进程fuser-k8080/tcp

4.日志查看命令

# 查看实时日志tail-f app.log# 查看Spring Boot启动日志journalctl -u myapp.service -f# 按时间查看grep"2024-01-01"app.log# 查看错误日志grep-i error app.log# 查看最后100行tail-n100app.log

5.监控和诊断

监控资源使用

# 查看CPU/内存使用top-p{PID}htop# 查看线程ps-T -p{PID}# 查看JVM堆内存jstat -gc{PID}# 生成堆转储jmap -dump:live,format=b,file=heap.bin{PID}

网络连接检查

# 查看应用监听的端口sudoss -tlnp|grep{PID}sudonetstat-tlnp|grep{PID}# 查看连接数sudoss -s|grep:8080

6.常用组合命令

一键找到并显示Spring Boot应用信息

#!/bin/bash# find_springboot.shecho"=== 查找所有Spring Boot应用 ==="psaux|grepjava|grep-E'\.jar$'|grep-vgrep|whilereadlinedopid=$(echo$line|awk'{print $2}')app=$(echo$line|awk'{for(i=11;i<=NF;i++) printf $i" "}')echo"PID:$pid"echo"应用:$app"echo"端口:$(sudolsof-p $pid|grepLISTEN|awk'{print $9}')"echo"---"done

优雅重启脚本

#!/bin/bashAPP_NAME="myapp.jar"PID=$(pgrep -f $APP_NAME)if[-z"$PID"];thenecho"应用未运行"exit1fiecho"停止应用..."kill$PIDsleep10# 等待进程停止ifps-p$PID>/dev/null;thenecho"强制停止..."kill-9$PIDfiecho"启动应用..."nohupjava -jar$APP_NAME>app.log2>&1&

7.系统服务管理(生产环境推荐)

Systemd服务配置示例

# /etc/systemd/system/myapp.service [Unit] Description=My Spring Boot Application After=network.target [Service] User=appuser WorkingDirectory=/opt/myapp ExecStart=/usr/bin/java -jar myapp.jar SuccessExitStatus=143 TimeoutStopSec=10 Restart=on-failure RestartSec=5 [Install] WantedBy=multi-user.target

使用命令

# 管理服务sudosystemctl start myappsudosystemctl stop myappsudosystemctl restart myappsudosystemctl status myappsudojournalctl -u myapp -f

8.实用技巧

查找占用端口的进程

# 查找哪个进程占用了8080端口functionfind_port(){sudolsof-i:$1}# 批量查找Spring Boot应用find/opt -name"*.jar"-type f2>/dev/null

查看Spring Boot健康检查

# 使用curl检查应用健康状态curlhttp://localhost:8080/actuator/healthcurlhttp://localhost:8080/actuator/info

总结要点

  1. 查找进程ps aux | grep java+pgrep -f
  2. 查看详情/proc/{PID}/目录 +lsof
  3. 管理进程kill/pkill+systemctl
  4. 监控日志tail -f+journalctl
  5. 诊断问题jcmd+jstack+jmap

掌握这些命令组合,你就能高效地管理和排查Linux上的Spring Boot应用了。建议将常用命令写成脚本,提高工作效率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1200414.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

高集成Mini高速CAN FD系统基础芯片SIT1169Q

在汽车电子与工业自动化领域&#xff0c;CAN总线作为核心通信协议&#xff0c;对其配套芯片的集成度、可靠性与性能提出了严苛要求。芯力特推出的SIT1169Q作为一款Mini高速CAN FD系统基础芯片&#xff08;System Basis Chip, SBC&#xff09;&#xff0c;通过高度集成高速CAN F…

中医执医刷题软件怎么选不踩坑?2026优质清单出炉,备考必看!

中医执医刷题软件怎么选不踩坑?2026优质清单出炉,备考必看!一、备考刚需:刷题软件如何成为通关 “加速器” 中医执业医师资格考试,是众多中医从业者职业生涯中的关键门槛。这场考试的内容极为繁杂,涵盖中医基础理…

黑客常见10大攻击技术,你知道几个?收藏这篇就够了

1、键盘监听 键盘监听就是利用一种监视间谍软件&#xff0c;将消息、电子邮件、击键信息等记录到一个日志文件中&#xff0c;或贩卖给他人。这其中就包含你的密码、社保号、信用卡信息等。 2、Ddos攻击 即利用众多来源的流量&#xff0c;涌入对方在线服务系统使其瘫痪。 黑…

网络安全靶场推荐,通过实战快速提升技能!

前言 自学网络安全知识&#xff0c;具备一定的理论基础&#xff0c;缺乏实战经验&#xff0c;想去网络靶场体验一下&#xff0c;通过实操能快速提升实战技能&#xff01; 可推荐的网络靶场&#xff1a; 1、春秋云境.com&#xff1a;平台涵盖350CVE靶标和10套大型仿真场景&am…

2026年市面上可靠的防爆气动葫芦公司怎么选,1吨气动葫芦/12吨气动葫芦/20吨气动葫芦,防爆气动葫芦订制厂家怎么选购

行业洞察:防爆气动葫芦的采购逻辑与市场格局 在工业4.0与安全生产双重驱动下,防爆气动葫芦作为高危环境(如煤矿、化工、石油)的核心起重设备,其市场需求持续攀升。据统计,2025年国内防爆气动葫芦市场规模已突破1…

【机械振动领域反问题求解】基于伪谱法的一维非理想悬臂梁与固支梁动力学分析研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真…

口碑与质量双优:国内靠谱的步入式环境试验箱生产商推荐

在全球制造业加速向高端化、智能化、绿色化转型的宏观背景下,产品的环境适应性与可靠性已成为衡量其核心竞争力的关键指标。作为模拟各类严苛环境、验证产品耐久性的关键装备,环境试验设备,特别是大型的步入式环境试…

CPU的内核态和用户态

核心概念 内核态 (Kernel Mode) 和 用户态 (User Mode) 是现代操作系统&#xff08;如Windows、Linux、macOS&#xff09;用来实现系统稳定性和安全性的一种硬件机制。它们本质上是CPU运行的两种不同特权级别或执行模式。 您可以把它想象成一个公司的两层结构&#xff1a;用户态…

java synchronized关键字用法和底层原理

一、synchronized 的用法 synchronized 关键字用于实现线程同步&#xff0c;确保多个线程在访问共享资源时不会发生数据竞争和不一致的问题。它主要有三种使用方式&#xff1a; 1. 同步实例方法 public synchronized void method() {// 同步代码 }锁对象是当前实例&#xff08;…

免费查文献的网站有哪些 常用免费学术文献获取平台推荐

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

基于学术研究的NMN成分测评,2026年值得入手的NMN品牌+选购避坑指南

《Nature》《Cell》等国际顶刊多项研究已证实,人体衰老的核心根源的是NAD+(烟酰胺腺嘌呤二核苷酸)水平的持续性流失——30岁后体内NAD+以每年8%-12%的速率递减,到45岁时储备量仅为年轻时的50%,直接导致线粒体功能…

综合项目1.22

1 关闭安全软件2 修改主机名 配置光盘镜像 3 测试网络 安装LNMP环境 4配置环境 5设置论坛安装文件 6 安装论坛软件

视频融合平台EasyCVR构建全方位全天候码头海岸线监管体系

随着全球贸易的蓬勃发展&#xff0c;码头海岸线作为国际贸易的重要枢纽&#xff0c;其安全管理和运营效率面临着前所未有的挑战。传统的人工巡检和分散式监控系统已难以满足现代化港口对安全、效率和智能化管理的需求。在此背景下&#xff0c;视频融合平台EasyCVR正成为码头海岸…

谷歌学术搜索使用指南:高效查找学术文献与研究资源的方法技巧

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

【开题答辩全过程】以 基于springboot的日用药品仓库管理系统的设计与实现为例,包含答辩的问题和答案

个人简介 一名14年经验的资深毕设内行人&#xff0c;语言擅长Java、php、微信小程序、Python、Golang、安卓Android等 开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。 感谢大家…

全网最全10个一键生成论文工具,MBA论文写作必备!

全网最全10个一键生成论文工具&#xff0c;MBA论文写作必备&#xff01; AI 工具助力论文写作&#xff0c;效率与质量双提升 在当前的学术研究和 MBA 学习过程中&#xff0c;论文写作已成为一项不可或缺的任务。随着人工智能技术的发展&#xff0c;越来越多的 AI 工具开始被应…

西屋电气 X 容联七陌:百年品牌售后服务的数字化进阶之路

西屋电气&#xff08;Westinghouse Electric Corporation&#xff09;自1886年创立于美国匹兹堡&#xff0c;以“点亮世界”为愿景&#xff0c;历经100多年发展&#xff0c;已成为全球电气与能源领域的标杆企业。其业务覆盖核电、输配电设备、家用电器、环保解决方案等核心领域…

学术搜索入口:高效查找学术资源的便捷平台

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…

【技术】从POD创建看Kubernetes源码实现 (五)- kubelet

✍️ 作者&#xff1a;茶水间Tech &#x1f3f7;️ 标签&#xff1a;#云计算#云原生#kubernetes#容器 &#x1f4d6; 前言 ​ kubernetes的模块比较多&#xff0c;架构复杂&#xff0c;代码量更是庞大&#xff0c;看代码比较麻烦&#xff0c;我们从现实场景出发&#xff0c;从…

sci文献检索入口指南:快速掌握SCI文献检索入口及使用方法

做科研的第一道坎&#xff0c;往往不是做实验&#xff0c;也不是写论文&#xff0c;而是——找文献。 很多新手科研小白会陷入一个怪圈&#xff1a;在知网、Google Scholar 上不断换关键词&#xff0c;结果要么信息过载&#xff0c;要么完全抓不到重点。今天分享几个长期使用的…