今天看啥  ›  专栏  ›  Java基基

超越 AOP:搜集业务操作日志的 3 个新探索

Java基基  · 公众号  · 科技自媒体  · 2024-09-24 11:55
    

主要观点总结

本文介绍了一个可能对你有用的社群和三种不同的方案来记录业务操作日志。文章首先描述了一个可能对你有用的社群提供的部分资料,然后详细介绍了三种不同的方案来解决业务操作日志的问题,包括AOP切面+注解、AOP切面+SpEL和Binlog+时间窗口。文章还讨论了每个方案的优缺点,并最后总结了在系统架构演进过程中对技术实现的思考和选择。

关键观点总结

关键观点1: 社群介绍

文章介绍了一个可能对你有用的社群,这个社群提供了一些资料,并欢迎加入。

关键观点2: 方案一:AOP切面+注解

文章详细介绍了第一种方案,通过AOP切面+注解的方式记录业务操作日志。包括定义注解、创建切面、配置Spring AOP和标记注解等步骤。但方案存在一些问题,如日志粒度和详细度有限,无法感知新的业务操作范围和业务的定义划分边界,以及无法对调用链的部分进行业务串联。

关键观点3: 方案升级:AOP切面+SpEL

为了解决方案一存在的问题,文章提出了方案升级,通过AOP切面+SpEL的方式。介绍了SpEL的基本概念和使用,以及如何在方案一的基础上使用SpEL表达式来记录更详细的业务操作日志。但方案仍然存在一些缺点,如需要定义大量注解,日志内容仍需系统自身根据上报场景进行封装等。

关键观点4: 方案升级:Binlog+时间窗口

文章还介绍了第三种方案升级,通过Binlog+时间窗口的方式记录业务操作日志。解决了方案二中的一些问题,如无法对多表存在级联保存和更新的数据进行很好的兼容支持,以及关于更新人的问题。文章详细描述了Binlog的原理,解决问题的思路,方案架构和优缺点。

关键观点5: 写在最后

文章最后强调了技术并不是银弹,思考过程才是最重要的。并介绍了作者的知识星球,包括项目实战、面试招聘、源码解析、学习路线等内容。


文章预览

👉  这是一个或许对你有用 的社群 🐱  一对一交流/面试小册/简历优化/求职解惑,欢迎加入 「 芋道快速开发平台 」 知识星球。 下面是星球提供的部分资料:   《项目实战(视频)》 :从书中学,往事中 “练 ” 《互联网高频面试题》 :面朝简历学习,春暖花开 《架构 x 系统设计》 :摧枯拉朽,掌控面试高频场景题 《精进 Java 学习指南》 :系统学习,互联网主流技术栈 《必读 Java 源码专栏》 :知其然,知其所以然 👉 这是一个或许对你有用的开源项目 国产 Star 破 10w+ 的开源项目,前端包括管理后台 + 微信小程序,后端支持单体和微服务架构。 功能涵盖 RBAC 权限、SaaS 多租户、数据权限、商城、支付、工作流、大屏报表、微信公众号等等功能: Boot 仓库:https://gitee.com/zhijiantianya/ruoyi-vue-pro Cloud 仓库:https://gitee.com/zhijiantianya/yudao-cloud 视频 ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照
总结与预览地址:访问总结与预览