现成的东西,如JDK自带的jconsole东西可以利便的查察线程信息(另外还可以查察CPU、内存、类、JVM根基信息等),Tomcat自带的manager,收费东西New Relic等。下图是jconsole查察线程信息的界面:
下面说一下如何通过Linux呼吁行,查察处事器中的毗连数和线程数。
1、毗连数
假设Tomcat吸收http请求的端口是8083,则可以利用如下语句查察毗连环境:
netstat –nat | grep 8083
功效如下所示:
可以看出,有一个毗连处于listen状态,监听请求;除此之外,尚有4个已经成立的毗连(ESTABLISHED)和2个期待封锁的毗连(CLOSE_WAIT)。
2、线程
ps呼吁可以查察历程状态,如执行如下呼吁:
ps –e | grep Java
功效如下图:
可以看到,只打印了一个历程的信息;27989是线程id,java是指执行的java呼吁。这是因为启动一个tomcat,内部所有的事情都在这一个历程里完成,包罗主线程、垃圾接纳线程、Acceptor线程、请求处理惩罚线程等等。
通过如下呼吁,可以看到该历程内有几多个线程;个中,nlwp寄义是number of light-weight process。
ps –o nlwp 27989
可以看到,该历程内部有73个线程;可是73并没有解除处于idle状态的线程。要想得到真正在running的线程数量,可以通过以下语句完成:
ps -eLo pid ,stat | grep 27989 | grep running | wc -l
个中ps -eLo pid ,stat可以找出所有线程,并打印其地址的历程号和线程当前的状态;两个grep呼吁别离筛选历程号和线程状态;wc统计个数。个中,ps -eLo pid ,stat | grep 27989输出的功效如下:
图中只截图了部门功效;Sl暗示大大都线程都处于空闲状态。
Linux公社的RSS地点:https://www.linuxidc.com/rssFeed.aspx