从AOP到分布式链路追踪

本文介绍了Spring AOP的基本概念,包括advice、pointcut和weaving,以及如何利用JDK动态代理实现。随后探讨了分布式链路追踪的重要性,日志规范和SpringLog组件的应用,以及侵入式和AOP方式接入SkyWalking的实例。

1、aop介绍

面向切面的编程Aspect Oriented Programming,AOP是OOP的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。

2.1 spring aop

三个基础概念:

  • advice:定义拦截行为,以及执行时机。比较常见的,方法执行之前进行拦截,执行之后,环绕,以及发生异常之后等执行时机。
  • pointcut:切入点。哪些方法需要增强,通常使用execution表达式进行增强。
  • weaving:代码织入。通常代表spring对advice和pointcut的集合处理。
    在这里插入图片描述
    SpringAOP则是Spring提供的一个标准易用的aop框架,依托Spring的IOC容器,提供了极强的AOP扩展增强能力,并没有提供一种新的AOP实现方式,其底层逻辑为jdk与cglib动态代理。

2.2 jdk动态代理

package spring.proxy;

import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
import java.lang.reflect.Proxy;
import java.util.Arrays;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值