美文网首页
从零搭建项目开发框架-24系统性能监控

从零搭建项目开发框架-24系统性能监控

作者: 孔垂云 | 来源:发表于2017-07-08 22:10 被阅读0次

系统在初期运行时可能没问题,每个功能都快速响应,但是随着数据量的增多,可能个别功能不能快速响应,但是用户还不好描述具体哪地方慢,这时候就需要通过AOP来进行性能监控,及时发现系统存在的问题。

@Aspect
public class PerformanceAspect {
    private static Logger logger = LoggerFactory.getLogger("performanceLog");

    @Around("execution (* com.critc.*.*.service.*.*(..))")
    public Object performanceIterceptor(ProceedingJoinPoint joinPoint) throws Throwable {
        Object result = null;
        long l = System.currentTimeMillis();
        result = joinPoint.proceed();
        long consume = System.currentTimeMillis() - l;
        if (consume > 3000) {
            //记录系统操作较慢的service处理过程
            logger.info("实体类:" + joinPoint.getTarget());
            logger.info("方法名:" + joinPoint.getSignature().getName());
            // 得到被拦截方法参数,并打印
            Object[] args = joinPoint.getArgs();
            for (int i = 0; i < args.length; i++) {
                logger.info("方法参数:" + i + " -- " + args[i]);
            }
            logger.info("用时:" + consume);
        }
        return result;
    }
}

applicationContext.xml增加配置

  <!-- 系统性能监控切面-->
    <bean id="performanceAspect" class="com.critc.plat.core.aop.PerformanceAspect"/>

这个aop的原理是@Around环绕型切面,开始时记录当前时间,结束时把结束时间-开始时间,如果超过3000毫秒,则记录对应的日志。

这样就可以监控所有service层的操作时间,如果操作时间超过3秒,记录下当前类名、方法名及所有参数,便于追溯问题,可以进行后续的性能调优,比如加索引、优化数据存储等等。

源码下载

本阶段详细源码

相关文章

  • 从零搭建项目开发框架-24系统性能监控

    系统在初期运行时可能没问题,每个功能都快速响应,但是随着数据量的增多,可能个别功能不能快速响应,但是用户还不好描述...

  • 从零搭建通用项目-扩展框架

    从零搭建通用项目-扩展框架 上篇介绍了基础框架的搭建,这篇介绍下支持快速开发所需要的扩展框架都需要哪些。 我大致分...

  • 人员分工安排

    锦州项目跟进 系统设计(陈俊杰、翁年年) 平台框架搭建(陈俊杰) 开发环境搭建(陈俊杰) 开发框架学习(尚可武) ...

  • 02-项目搭建

    项目搭建 课程目标 熟悉 Swift 语法 搭建系统主体框架结构 对比与 OC 开发的异同 纯代码搭建框架 创建文...

  • 从零搭建通用项目-基础框架

    从零搭建通用项目-基础框架 前言:由于公司项目众多,每次新项目开始都从零搭建项目既费时,又效率低下。这个时候就需要...

  • 随堂笔记1

    慕课网《Java秒杀系统方案优化 高性能高并发实战》笔记 总览 第一章 项目框架搭建 SpringBoot环境搭建...

  • 从零搭建项目开发框架-01序

    最近一个月事情非常多,一直没来得及更新博客。前段时间看了一篇文章,具备什么样的技能才能称之为架构师。架构师在一个I...

  • 从零搭建项目开发框架-28结语

    整个项目开发框架的搭建主要就包括上面那么多,然后进行数据库设计、代码约定就可以进行开发了。当然这只是相对简单的框架...

  • 从零搭建项目开发框架-02框架设计

    首先界定开发框架都包含哪些内容: 权限控制 日志、异常处理 开发规范 等等 权限控制这里采用基于RBAC(Role...

  • 从零搭建通用项目-定制框架

    从零搭建通用项目-定制框架 这篇文章讲一下我在搭建通用项目的时候,针对性的做了哪些框架。 UserModel 用户...

网友评论

      本文标题:从零搭建项目开发框架-24系统性能监控

      本文链接:https://www.haomeiwen.com/subject/izwocxtx.html