JVM Sandbox入门教程与原理浅谈

2022-11-14
阅读 8 分钟
1.4k
在日常业务代码开发中,我们经常接触到AOP,比如熟知的Spring AOP。我们用它来做业务切面,比如登录校验,日志记录,性能监控,全局过滤器等。但Spring AOP有一个局限性,并不是所有的类都托管在 Spring 容器中,例如很多中间件代码、三方包代码,Java原生代码,都不能被Spring AOP代理到。如此一来,一旦你想要做的切面...
封面图

管理订单状态,该上状态机吗?轻量级状态机COLA StateMachine保姆级入门教程

2022-06-02
阅读 11 分钟
4.1k
在平常的后端项目开发中,状态机模式的使用其实没有大家想象中那么常见,笔者之前由于不在电商领域工作,很少在业务代码中用状态机来管理各种状态,一般都是手动get/set状态值。去年笔者进入了电商领域从事后端开发。电商领域,状态又多又复杂,如果仍然在业务代码中东一块西一块维护状态值,很容易陷入出了问题难于Debu...

如何保证同事的代码不会腐烂?一文带你了解 Alibaba COLA 架构

2022-04-01
阅读 8 分钟
1.4k
本文开始前,问大家一个问题,你觉得一份业务代码,尤其是互联网业务代码,都有哪些特点?我能想到的有这几点:互联网业务迭代快,工期紧,导致代码结构混乱,几乎没有代码注释和文档。互联网人员变动频繁,很容易接手别人的老项目,新人根本没时间吃透代码结构,紧迫的工期又只能让屎山越堆越大。多人一起开发,每个人...
封面图

手把手教你提交Jar包到Maven公共仓库 | 萌新写开源02

2021-12-14
阅读 9 分钟
4.4k
在上一篇文章中,我介绍了自己的SpringBoot Starter项目,可以让我们使用注解的方式轻松地获取操作日志,并推送到指定数据源。之前,我的项目开源在Github上,大家想要用我的项目,还得把Github仓库配置到Maven的Setting.xml里,一点也不方便。本文,就整理一下我把项目上传到公共Maven仓库的过程,当做一篇教程文章。不...
封面图

如何使用注解优雅的记录操作日志 | 萌新写开源 01

2021-11-08
阅读 7 分钟
2.7k
本文讨论如何优雅的记录操作日志,并且实现了一个SpringBoot Starter(取名log-record-starter),方便的使用注解记录操作日志,并将日志数据推送到指定数据管道(消息队列等)
封面图

API网关才是大势所趋?SpringCloud Gateway保姆级入门教程

2021-05-20
阅读 5 分钟
4.6k
该项目借助Spring WebFlux的能力,打造了一个API网关。旨在提供一种简单而有效的方法来作为API服务的路由,并为它们提供各种增强功能,例如:安全性,监控和可伸缩性。
封面图

Github Action 快速上手指南

2021-02-20
阅读 4 分钟
4.9k
Github之前更新了一个Action功能(应该是很久以前了),可以实现很多自动化操作。用来替代用户自己设置的自动化脚本(比如:钩子+Jenkins)。
封面图

【译文】工作六年后,我对软件开发的认知转变

2021-02-15
阅读 4 分钟
1.2k
前言大家好,在下蛮咕咕(我是“鸽”王),好久不见啊。最近我司已经放假过年了,在家里就不免会多逛一些“稀奇古怪”的网站,通过阮一峰的每周新闻,发现了一篇比较不错的英文文章。里面的大部分观点我都比较认同,在这里做了一个比较接地气的翻译,分享给大家。正文在软件产业工作六年后,我对软件行业的一些想法发生了改...

废弃fastjson!大型项目迁移Gson保姆级攻略

2021-01-13
阅读 10 分钟
2.5k
这么做的主要的原因是公司受够了fastjson频繁的安全漏洞问题,每一次出现漏洞都要推一次全公司的fastjson强制版本升级,很令公司头疼。

Java动态修改LOGGER日志级别

2020-11-13
阅读 4 分钟
3.7k
一个典型的场景:在一些需要打印MySQL语句的场景,如果你正在使用MyBatis框架,由于MyBaits中SQL语句是DEBUG级别的信息,通常在线上容器就没法看到。

【线上排查实战】AOP切面执行顺序你真的了解吗

2020-10-21
阅读 8 分钟
2k
前言忙,是我这个月的主旋律,也是我频繁鸽文章的接口————蛮三刀把刀公司这两个月启动了全新的项目,项目排期满满当当,不过该学习还是要学习。这不,给公司搭项目的时候,踩到了一个Spring AOP的坑。本文内容重点:问题描述Spring AOP执行顺序探究顺序错误的真相代码验证结论本文阅读大概需要:3分钟码字不易,求个关注...