程序级的AOP到底好不好?

本文探讨了Spring AOP机制的应用与挑战,提出在单一应用模式下AOP的使用策略,并建议在分布式环境中将AOP后移至数据库或日志层面以确保原逻辑的稳定性和性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

很多年前模拟过Spring的AOP机制,简单的实现其实不难,但真正要保证切入代码符合预期的设计,不会引起负面影响,特别是要保证原来逻辑的稳定性,即AOP的强壮性。个人感觉还是很难,如果横切的代码过多,就更难管理了。在后面的实际应用中,虽然知道这种AOP架构,但一般除了预设的横切代码,都没有采用这种架构,更多的是将这种架构设计的需求后移到数据库或者日志层面。在单一应用模式下,AOP至少还可以用,而在分布式应用中,个人感觉AOP在程序级应用不应被滥用,而是应该后移到数据库或者日志文件,以实现原逻辑的稳定和性能,使得切入需求的逻辑代码彻底与原逻辑代码分离。本质就是将这种AOP的程序架构思想提升到更高的层面进行架构和处理。

从设计的角度来说,当然是预先知道切入的功能更好,但为了应对需求的变化,又必须具有AOP能力的冗余。通过这几年的设计实践来看,我主张不要再程序级上实现过多的AOP横切,应该在业务架构层面来设计这种AOP机制。这种层级上的AOP更加灵活,更具有扩展性和维护性。


做商务,弄需求,做架构,写代码....苦B的人生不需要解释,就用思考润滑。


很久没发文章,支持度还是有些问题。只能以此纪念蓝胖子在优快云的岁月!


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值