java面试题:Linux
Q:Linux怎么查端口?端口被占用怎么办?
netstat -ntulp | grep 2181//查看2181端口号
netstat -pan | grep 2181 //查看2181端口号
如下所示,其中的PID是进程号。
[root@localhost bin]# netstat -pan | grep 2181
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp6 0 0 :::2181 :::* LISTEN 7839/java
也可以使用以下命令:
lsof -i:2181 //查看2181端口占用
[root@localhost bin]# lsof -i:2181
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 7839 root 26u IPv6 85064 0t0 TCP *:eforward (LISTEN)
通过以上命令得到了端口对应的进程7839后,可以使用ps查看进程的使用情况。
ps -aux | grep 7839 //查看7839进程的使用情况
[root@localhost bin]# ps -aux | grep 7839
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 7839 0.1 2.7 3296832 51860 ? Sl 03:39 0:45 /usr/local/zookeeper-3.4.13/bin/../conf/zoo.cfg
就可以知道2181端口是被哪个程序占用了,然后判断是否使用KILL命令干掉。
Q:Linux怎么查看Tomcat端口号?
步骤跟上面的相反,先得到进程号PID,再根据PID去查看端口号
ps -ef|grep tomcat
假设查到的进程号为5772,那么如下根据进程号查端口号:
netstat -anop |grep 5772
Q:Linux怎么查看日志?
cat filename | tail -n +3000 | head -n 1000 从第3000行开始,显示1000行。即显示3000~3999行
cat filename| head -n 3000 | tail -n +1000 显示1000行到3000行
cat -n filename |grep "关键字"
cat filename | grep -C 5 '关键字' (显示日志里匹配字串那行以及前后5行)
cat filename | grep -B 5 '关键字' (显示匹配字串及前5行)
cat filename | grep -A 5 '关键字' (显示匹配字串及后5行)
也可以用vim打开后,使用/关键字匹配。
**Q:Linux如何找到 java 程序 CPU 使用率100%的原因? **
1.用top 命令查看占用资源最多PID(进程):
如 pid 为 1000;
2.再用 top -H -p 1000 命令查看在这个进程中,消耗 cpu 最多 的线程,如 1003;
3. 最后使用 jstack 1000 > dump_file 把这个进程的堆栈信息 dump 到文件中,
4.打开 dump_file,找到 id 为1003的线程(要转化为16进制),就能发现是哪个方法占用了 cpu,分析自己的代码
Q:Linux怎么查看IO负载?
iostat -x
Q:有没有用过jstack?怎么排查线上问题?说出排查线上问题的一个完整过程以及相关的Linux命令。
详情见: https://mp.weixin.qq.com/s?__biz=MzU0OTk3ODQ3Ng==&mid=2247484656&idx=1&sn=f728dc671155fd690a8d38d80c96b11f&chksm=fba6ecf3ccd165e530a95d0e693194a3710bfd352d8b1cb0d18f3c4e57e70698d76fbd5b742b&mpshare=1&scene=1&srcid=#rd
待补充。
参考资料: https://blog.csdn.net/hanner_cheung/article/details/6081440
java面试题:Linux的更多相关文章
- java面试题及答案(转载)
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...
- Java笔试题解答和部分面试题
面试类 银行类的问题 问题一:在多线程环境中使用HashMap会有什么问题?在什么情况下使用get()方法会产生无限循环? HashMap本身没有什么问题,有没有问题取决于你是如何使用它的.比如,你 ...
- java面试题及答案(基础题122道,代码题19道)
JAVA相关基础知识 1.面向对象的特征有哪些方面 1.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分, ...
- java面试题系列12
1.面向对象的特征有哪些方面 a.抽象: 抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节.抽象 ...
- Java面试题及答案(基础122道,编码19道)
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...
- java面试题及答案
JAVA相关基础知识1.面向对象的特征有哪些方面 1.抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面.抽象并不打算了解全部问题,而只是选择其中的一部分,暂时 ...
- 一些常见的Java面试题 & 面试感悟
< 前言 > 近期在面试,深感这个行业的浮躁,一些菜不辣基的弱鸡开出的工资待遇要求,超过了我.不知道他们是怎么拿到那么高的工资的,难道是他在公司有亲戚朋友吗?有后台吗?是行业热钱真的过多了 ...
- 【面试必备】常见Java面试题大综合
一.Java基础 1.Arrays.sort实现原理和Collections.sort实现原理答:Collections.sort方法底层会调用Arrays.sort方法,底层实现都是TimeSort ...
- 史上最全阿里 Java 面试题总结
以下为大家整理了阿里巴巴史上最全的 Java 面试题,涉及大量 Java 面试知识点和相关试题. JAVA基础 JAVA中的几种基本数据类型是什么,各自占用多少字节. String类能被继承吗,为什么 ...
- JAVA面试题(8)
java基础以及多个“比较” 1.Collections.sort排序内部原理 在Java 6中Arrays.sort()和Collections.sort()使用的是MergeSort,而在Java ...
随机推荐
- 2.HTML+CSS制作一闪一闪亮晶晶的星星(stars)
效果地址:https://codepen.io/flyingliao/pen/NJxbdB?editors=1100 HTML code: <div class="stars" ...
- windows清除访问共享文件夹的登陆信息
https://jingyan.baidu.com/article/c843ea0b70797e77931e4a96.html 当在命令提示窗口输入net use命令时,会显示本机缓存的共享登录信息, ...
- java接口的学习笔记
1接口 接口是一个特殊的类,在JAVA中,接口是由抽象方法和全局敞亮组成. 在JAVA忠使用INTERFACE定义接口. public class InterfaceDemo { public sta ...
- python大法好——变量、常量、input()、数据类型、字符串、格式化输出、运算符、流程控制语句、进制、字符编码
python基础知识 1.变量 变量:把程序运算的中间结果临时存到内存里,以备后面的代码可以继续调用. 作用:A.存储数据. B.标记数据. 变量的声明规则: A:变量名只能是字母,数字或下划线任意组 ...
- QT,QT SDK, QT Creator 区别
Qt是一个跨平台的C++图形用户界面应用程序框架.(不仅仅是C++,还包括QML,Qquick,html5)它提供给应用程序开发者建立艺术级的图形用户界面所需的所用功能.Qt是完全面向对象的,很容易扩 ...
- VC中链接错误,提示string重定义
VC链接错误,说是string已经有了实现了,只要 rebuild 一下好了. Linking...LINK : warning LNK4075: ignoring '/EDITANDCONTINUE ...
- keyword模块
导入关键字模块 import keyword 列出当前系统中Python的关键字 >>> keyword.kwlist ['and', 'as', 'assert', 'break' ...
- Cmake 编译opengl开源库glfw工程及使用
使用的是cmake gui进行编译的,路径输入好之后,点configure配置vs版本,这里是vs2013版本,然后如果画面出现红色的 需要再点击一下 Generate 然后直接点open proje ...
- 如何使用navicat远程连接服务器上的oracle数据库
- span标签 宽度无效解决方案
完美的解决方案 下 面代码的CSS定义完美解决了span的宽度设置问题. 由于浏览器通常对不支持的CSS属性采取忽略处理的态度, 所以最好将display:inline -block行写在后面,这样在 ...