一、单服务
1.关键字synchronized修饰可能出现并发问题的方法
2.Lock接口(注意有作用域限制)
3.事物级别无需特别处理(我个人还是认为事物主要作用于一组操作的,跟并发无直接关联,两种东西)
二、多服务
!!!还是得分个类
1、多个服务(A、B、C)操作一张表,出现重复插入等问题
每个服务拥有完整的【web层 service层 dao层】,就称之独立存在,并发和事物的处理手段全部失效(针对这中特殊架构来讲);只能数据库级别处理,比如联合主键,service层不要忘记处理异常!
ps:这种架构的项目,早晚要炸!
。。。
2、RPC、分布式 ...
无论负载均衡,集群...;请求最终汇聚到单服务上,所以单服务的处理方式又可以使用了。
但是,事物的处理变得更加复杂了!
。。。
三、总结
头:请求到服务主体阶段
尾:操作数据库阶段
要么限流(头),要么降低数据库的性能(尾)。