29、AOP系统选择与监控技术应用

AOP系统选择与监控技术应用解析

AOP系统选择与监控技术应用

1. 选择合适的AOP系统

在软件开发中,合理选择AOP(面向切面编程)系统至关重要。Spring AOP允许使用多种风格来表达切面,并且可以同时使用多种风格。在选择时,我们通常假设Spring已经是系统的架构基础,同时也可以将AspectJ编织与Spring结合使用。

1.1 AspectJ与Spring AOP的比较

AspectJ是一个强大的系统,但需要使用编织器;Spring AOP则是一个更简单的系统,在Java提供的机制内工作。它们的区别主要体现在以下几个方面:
| 比较维度 | Spring AOP | AspectJ |
| ---- | ---- | ---- |
| 连接点模型 | 仅暴露一种连接点,即公共非静态方法的执行,且隐式将暴露的连接点限制为bean的连接点 | 除方法执行外,还暴露多种连接点,如对象构造、类加载、方法调用、异常处理程序和字段访问,具有更广泛的横切能力 |
| 采用复杂度 | 采用成本低,无需使用特殊工具,也无需修改构建或执行环境,需要学习的AOP概念更少 | 需要使用编织器,相对复杂 |
| 可配置性 | 基于对象的AOP,为单个bean配置横切功能的方式简单,Spring的自动代理机制可对同一类型的多个bean应用统一的横切 | 基于类型的AOP,在类型级别提供简单的配置,需要依赖某种对象标识来区分同一类型的多个实例 |
| 性能 | 基于代理的AOP,由于代理需要使用反射,性能低于AspectJ实现的字节码编织,但在大多数应用场景中,代理增加的开销可忽略不计 | 字节码编织实现,性能较高 |

1.2 Spring A
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值