古董系统的并发安全改造
背景描述:
以前维护的系统,由于前端没有对按钮进行多次操作进行屏蔽,可以可以多次点击。
后端服务,没有进行幂等性校验。
分析:
原系统采用 Java 开发、大多数都支持 SpringAop。由此前景,设计对原系统的改造。
考虑到管理系统对于并发没有太高的要求,考虑到使用 springAop 根据类+方法进行加锁,保证同一时刻该方法只能被一个线程调用。
对于个别有并发要求的接口,考虑增加注解的方式,可以关闭同步锁。
代码实现:
复制代码
以前维护的系统,由于前端没有对按钮进行多次操作进行屏蔽,可以可以多次点击。
后端服务,没有进行幂等性校验。
原系统采用 Java 开发、大多数都支持 SpringAop。由此前景,设计对原系统的改造。
考虑到管理系统对于并发没有太高的要求,考虑到使用 springAop 根据类+方法进行加锁,保证同一时刻该方法只能被一个线程调用。
对于个别有并发要求的接口,考虑增加注解的方式,可以关闭同步锁。
评论