获取Tomcat是否有保持连接数

原创
2018/04/21 23:56
阅读数 577

获取Tomcat是否有保持连接数

       当我们摘掉一台tomcat应用流量的时候,可以马上重启tomcat么?我的理解是不能,我们只能保证当前没有新的请求链接进来。而正在处理的请求链接结束没有?这个是我们需要关注的事情。

        1.在linux 下面使用shell 命令:

netstat -na | grep ESTAB | grep :8080 | wc -l

        2.有没有Java 层面上的办法来实现呢?

        有,答案如图。

        

        这个是tomcat manger页面里面的显示的,深究了一下tomcat的实现。通过实现代码,我们也可以直接在web层面上获取这个数据。

      MBeanServer server = Registry.getRegistry(null, null).getMBeanServer();
      String e = "*:type=ThreadPool,*";
      ObjectName objectName = new ObjectName(e);
      Set set = server.queryMBeans(objectName, (QueryExp) null);
      //端口请修改成自己应用的,一般也可以动态的。
      ObjectName threadObjName = new ObjectName("Tomcat:type=ThreadPool,name=\"http-nio-8800\"");
      // server.getMBeanInfo(threadObjName);
      String results = "";
      Object name = server.getAttribute(threadObjName, "keepAliveCount");
      results = "keepAliveCount:" + name;

       

 

 

 

 

展开阅读全文
打赏
0
4 收藏
分享
加载中
更多评论
打赏
0 评论
4 收藏
0
分享
返回顶部
顶部