博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在企业级应用中我们如何通过Linux进行部署、替换、查看日志、杀死进程?
阅读量:4149 次
发布时间:2019-05-25

本文共 2054 字,大约阅读时间需要 6 分钟。

用过Linux的人都知道,Linux的命令是非常多的,其实我们并不不需要去全学个遍。掌握最常用的命令之后,学习不常用的命令也不会很难,我们要学的是一种方法而不是为了技术而学技术。

查看端口

在Linux使用过程中,我们需要了解当前系统开放了哪些端口,并且要查看开放这些端口的具体进程和用户,可以通过netstat命令进行简单查询,netstat命令各个参数说明如下:

  • -t : 指明显示TCP端口
  • -u : 指明显示UDP端口
  • -l : 仅显示监听套接字(所谓套接字就是使应用程序能够读写与收发通讯协议(protocol)与资料的程序)
  • -p : 显示进程标识符和程序名称,每一个套接字/端口都属于一个程序。
  • -n : 不进行DNS轮询,显示IP(可以加速操作)

可以显示当前服务器上所有端口及进程服务,加上grep结合可查看某个具体端口及服务情况,例如: 

netstat -a 查看所有服务端口
netstat -ntlp 查看当前所有tcp端口
netstat -ntulp |grep 80 查看所有80端口使用情况
netstat -an | grep 3306 查看所有3306端口使用情况
netstat  -lanp  查看一台服务器上面哪些服务及端口
lsof -i:端口号 用于查看某一端口的占用情况,比如查看8000端口使用情况,lsof -i:8000

杀死进程

查看端口的信息,根据进程号杀死进程,操作如下:

  1. netstat -nap|grep  80
  2. ps -aux|grep 727
  3. 杀掉该进程:kill -9  727

小提示:当面试官问你如果存在杀不死的进程,该怎么办?,最简单的方法当然是重启服务器,相当于清理内存了。可是方法虽然简单,但是不是很实用,因为服务器是不能随随便便重启的,客户随时可能要用到。最好的办法是,我们杀掉其父进程,父进程干掉后,就没问题了。通过ps -ef | grep  进程ID,查看其父进程,然后 kill -9 父进程ID。

查看日志

1.jar包

目直接在jar包录下,输入命令查看即可,如下所示:

查看实时日志 tail -f nohup.out
分页查看所有日志 cat nohup.out | more
分页查看前N行日志 tail -n 1000 nohup.out | more
查看实时日志并检索关键字 tail -f nohup.out | grep "关键字"
检索日志,并显示该条日志的前后N行记录 cat nohup.out | grep -n -B10 -A10 "关键字"
查看日志,从第1000行开始,显示500行 cat nohup.out | tail -n +1000| head -n 500
查看日志,显示1000行到3000行 cat filename| head -n 3000 | tail -n +1000

2.war包

war包一般都会放在tomcat的webapp目录下(不一定要用tomcat,只要是WEB应用服务器就可以),tomact目录的logs文件夹就是存放日志的,如果想要退出查看实时日志,按Ctrl+C即可。

查看实时日志 tail -f catalina.out
查询前100条日志 head -100 catalina.out
查询最后100条日志 tail -100 catalina.out
从倒数第20000行开始,查询前100条日志 tail -20000 catalina.out | head -100
从倒数第20000行开始,查询tomcat启动日志 tail -20000 catalina.out | grep 'org.apache.catalina.startup.Catalina.star

部署

1.jar包

第一种:java -jar XXX.jar

临时性:这是最基本的jar包执行方式,但是当我们用ctrl+c中断或者关闭窗口时,程序也会中断执行。

第二种:java -jar XXX.jar &

&代表在后台运行,使用ctrl+c不会中断程序的运行,但是关闭窗口会中断程序的运行。

第三种:nohup java -jar XXX.jar &

运行的程序日志会输出到当前目录下的nohup.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。

第四种:nohup java -jar XXX.jar >temp.out &

>temp.out的意思是将日志输出重定向到temp.out文件,使用ctrl+c中断或者关闭窗口都不会中断程序的执行。

2.war包

直接放到tomcat下的webapp目录下,运行tomcat即可。

替换

无论是替换jar还是war,都应该先停掉进程、杀死端口,用连接工具删除文件(WinSCP或者FinalShell),再把新的文件上传(建议备份上一次的文件),如果这次上线发生错误,还可以回退到上一个版本。

 

转载地址:http://pypti.baihongyu.com/

你可能感兴趣的文章
Spring MVC 教程,快速入门,深入分析
查看>>
Android 的source (需安装 git repo)
查看>>
Commit our mod to our own repo server
查看>>
LOCAL_PRELINK_MODULE和prelink-linux-arm.map
查看>>
Simple Guide to use the gdb tool in Android environment
查看>>
Netconsole to capture the log
查看>>
Build GingerBread on 32 bit machine.
查看>>
How to make SD Card world wide writable
查看>>
Detecting Memory Leaks in Kernel
查看>>
Linux initial RAM disk (initrd) overview
查看>>
Timestamping Linux kernel printk output in dmesg for fun and profit
查看>>
There's Much More than Intel/AMD Inside
查看>>
CentOS7 安装MySQL 5.6.43
查看>>
使用Java 导入/导出 Excel ----Jakarta POI
查看>>
本地tomcat 服务器内存不足
查看>>
IntelliJ IDAE 2018.2 汉化
查看>>
基于S5PV210的uboot移植中遇到的若干问题记录(一)DM9000网卡移植
查看>>
Openwrt源码下载与编译
查看>>
我和ip_conntrack不得不说的一些事
查看>>
Linux 查看端口使用情况
查看>>