Java中的锁是千门百类的多。我今天要说的并不是这许多种类的一种。那又是什么神奇的锁呢?
实际项目开发中啊,你一定会遇到也会考虑高并发情况下如何保持数据的一致性,原子性的。尤其是当庞大数量毫秒级的请求过来时,你的服务端程序如何准确的接招哪?想必许多会一个脑袋两个大吧?
当涉及到重要数据处理时,注意哈,非重要数据处理就随便搞搞啦,锁这东西吧,好用是真的。凡事都是一把双刃剑,有利也就有弊端啦。过多的锁会牺牲一部分性能。但涉及到重要数据时,保证数据的准确性牺牲性能又如何哪。
一般是介么处理滴,首先是要对数据库加一把锁,在处理sql上加表的行级锁。
再就是在service层加一把锁啦,至于加什么锁那就是重点啦,red is就可以实现的一种防重锁。好了说了这么多,如何在项目中灵活运用就要看具体场景啦……