一、部署微服务时,通过java -jar命令运行springboot.jar微服务时,当会话结束即客户端退出时,微服务也会随之停止,为避免这种情况,可以使用nohup命令来让SpringBoot进程持续运行,不会随着SSH客户端的关闭而结束。
二、服务运行命令分析
(1)前台运行:java -jar xxx.jar,当前ssh窗口被锁定,ctrl+c可以终止程序运行;关闭ssh窗口,程序也随之关闭。
注意:运行脚本或者程序时,其他命令需要等到该命令执行完才可以执行。
(2)后台运行:java -jar xxx.jar &,当前ssh窗口不被锁定,ctrl+c无法终止程序运行,但是,关闭ssh窗口,程序随之关闭。其中&表示后台运行。
注意:运行脚本或者程序时,其他命令不需要等到该命令执行完就可以执行。
(3)不挂断运行:nohup java -jar XXX.jar &,当账户退出或终端ssh窗口关闭时,程序仍然运行。
注意:程序运行结果默认会输出到当前文件夹的nohup.out文件
三、运行微服务常用命令
1、微服务运行标准命令:nohup java -jar xxx.jar >xxx.log 2>&1 & ,表示后台运行程序,同时将程序标准输出和错误输出都输出到xxx.log文件。
命令解释:
(1)> file 表示将标准输出输出到file中,也就相当于 1>file,
(2)2>&1 表示将错误重定向到标准输出上。
2、命令详解
(1)本来1----->屏幕 (1指向屏幕)
(2)执行>xxx.log后, 1----->log (1指向log)
(3)执行2>&1后, 2----->1 (2指向1,而1指向log,因此2也指向了log)
四、查看后台运行命令
1、jobs可以查看查看后台运行任务,并且每个作业前面都有个编号。
2、如果想将某个作业调回前台控制,只需要 fg + 编号即可。
五、查看进程编码(PID)和所占用的端口号
1、ps命令用来列出系统中当前运行的那些进程,通过该命令可以查看到进程编码(PID),利用以下命令查看指定进程的PID:ps -aux | grep 进程名称。
2、linux一般使用netstat 来查看系统端口使用情况。
3、netstat命令格式:netstat [选项]
命令中各选项的含义如下:
-a 显示所有socket,包括正在监听的。
-c 每隔1秒就重新显示一遍,直到用户中断它。
-i 显示所有网络接口的信息,格式同“ifconfig -e”。
-n 以网络IP地址代替名称,显示出网络连接情形。
-r 显示核心路由表,格式同“route -e”。
-t 显示TCP协议的连接情况。
-u 显示UDP协议的连接情况。
-v 显示正在进行的工作。
4、常用netstat命令:netstat -tunlp | grep 指定端口
六、关闭进程命令
1、通过pid使用kill命令关闭指定进程:kill -[选项] PID。
选项命令解释:
-a:当处理当前进程时,不限制命令名和进程号的对应关系;
-l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称;
-p:指定kill 命令只打印相关进程的进程号,而不发送任何信号;
-s <信息名称或编号>:指定要送出的信息;
-u:指定用户。
2、常用信息编号含义:
HUP 1 终端断线
INT 2 中断(同 Ctrl + C)
QUIT 3 退出(同 Ctrl + \)
TERM 15 终止(默认kill)
KILL 9 强制终止
CONT 18 继续(与STOP相反, fg/bg命令)
STOP 19 暂停(同 Ctrl + Z)
3、kill -9 PID:表示强制关闭指定进程。
七、windows指定文件夹下打开命令窗口
1、按住shift,鼠标右键,选择在此处打开PowerShell窗口。
八、运行war包
1、运行war包需要web容器(servlet容器)来运行,例如,tomcat、jetty开源容器或者weblogic收费版容器。