java并发访问重复请求过滤问题-创新互联-成都创新互联网站建设

关于创新互联

多方位宣传企业产品与服务 突出企业形象

公司简介 公司的服务 荣誉资质 新闻动态 联系我们

java并发访问重复请求过滤问题-创新互联

问题描述

网站设计制作过程拒绝使用模板建站;使用PHP+MYSQL原生开发可交付网站源代码;符合网站优化排名的后台管理系统;成都做网站、网站建设、外贸营销网站建设收费合理;免费进行网站备案等企业网站建设一条龙服务.我们是一家持续稳定运营了10多年的成都创新互联公司网站建设公司。

前段时间遇到个问题,自己内部系统调用出现重复请求导致数据混乱。


发生条件:接受到一个请求,该请求没有执行完成又接受到相同请求,导致数据错误(如果是前一个请求执行完成,马上又接受相同请求不会有问题)


问题分析:是由于数据库的脏读导致


问题解决思路


1.加一把大大的锁 (是最简单的实现方式,但是性能堪忧,而且会阻塞请求)


2.实现请求拦截 (可以共用,但是怎么去实现却是一个问题,怎么用一个优雅的方式实现,并且方便复用)


3.修改实现 (会对原有代码做改动,存在风险,最主要的是不能共用)


最终实现方式


通过注解+spring AOP 的方式实现


使用


通过在任意方法上添加注解NotDuplicate


类1:

import static java.lang.annotation.ElementType.METHOD;

import java.lang.annotation.Documented;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

@Target({METHOD})
@Retention(RetentionPolicy.RUNTIME)
@Documented
public @interface NotDuplicate {
}

标题名称:java并发访问重复请求过滤问题-创新互联
本文链接:http://kswsj.cn/article/isgde.html

其他资讯