• 项目性能监控之javamelody


    1.引入jar包JavaMelody

    <!-- Java应用程序监控JavaMelody begin -->
    <!-- 启动后直接http://localhost:2121/monitoring查看参数 -->
        <dependency>
           <groupId>net.bull.javamelody</groupId>
           <artifactId>javamelody-core</artifactId>
           <version>1.70.0</version>
       </dependency>
    <!-- Java应用程序监控JavaMelody end-->

    2.不需做任何配置,启动项目后

    访问:http://<host>/<context>/monitoring

    如http://localhost:2121/demo/monitoring即可访问

    javamelody启动原理

    按照正常使用步骤,除了导入javamelody的jar包,还需要在web.xml配置文件里,配置过滤器filter和filter-mapping,还有一个listener监听器。

    为什么现在只需导入jar包,不需要任何配置,启动容器监控程序也跟着启动?这个要从Servlet3.0的规范说起。

    Servlet3.0

    Servlet3.0对于模块化支持

    也就是说现在我们可以把各Web组件单独拿出来进行开发,之后把它们打成对应的jar包放到主项目中就可以了,而不必像之前那样——所有的内容都必须在web.xml文件中进行定义。有了对模块化的支持后我们在实际应用中就可以把某些通用功能的Filter、Listener、Servlet作为一个单独的Web模块进行定义,在需要使用它们的项目中就把对应Web模块对应的jar包加进去就可以了。是不是很有用呢?接下来我们就来看一下这些Web组件究竟是怎样模块化的。      

    Web模块打成的jar包的内容的文件结构要求是这个样子的:
        |--META-INF
    |     |--web-fragment.xml
    |     |--resources
    |     |     |--jsp、图片等,相当于web的根目录
    |--class文件和类路径下的文件

    容器启动时,会去读取每个jar包的META-INF下的信息

    查看javamelody-core的jar包会发现,在META-INF文件夹下有个web-fragment.xml,说明这个jar包本身就是一个Web模块

    打开这个文件,会发现,其实运行监控的过滤器和监听器,已经在这个文件里定义了。这也是为什么不需要再做配置的原因

    Servlet 3.0需要Tomcat 7.0以上版本才支持(包含7.0)

  • 相关阅读:
    vue.js生成纵向拓扑图
    vue.js生成横向拓扑图
    Vue.js中使用wangEditor富文本编辑器
    文件上传与下载,PDF与Excel的操作
    Element布局实现日历布局
    golang时间转换
    iView学习笔记(四):Form表单操作
    iView学习笔记(三):表格搜索,过滤及隐藏列操作
    iView学习笔记(二):Table行编辑操作
    iView学习笔记(一):Table基本操作(包含前后端示例代码)
  • 原文地址:https://www.cnblogs.com/ajax-li/p/7884317.html
Copyright © 2020-2023  润新知