java多线程高并发线程安全问题
2017-06-26 11:40
417 查看
在抢购之类的业务处理时,会出现超发之类的线程安全问题。
我个人想到的解决方法如下:
采用数据库锁,悲观锁有效率低下问题,所以我推荐乐观锁,虽然会增大CPU开销,很多服务和软件都支持乐观锁,如Redis的watch
采用FIFO队列,强行把多线程变成单线程,但是也会出现队列内存爆满问题
采用同步代码块,只给数据库操作的代码加锁,提高效率,对不同数据记录操作采用不同的锁
我个人想到的解决方法如下:
采用数据库锁,悲观锁有效率低下问题,所以我推荐乐观锁,虽然会增大CPU开销,很多服务和软件都支持乐观锁,如Redis的watch
采用FIFO队列,强行把多线程变成单线程,但是也会出现队列内存爆满问题
采用同步代码块,只给数据库操作的代码加锁,提高效率,对不同数据记录操作采用不同的锁
相关文章推荐
- java多线程㈡—线程安全问题(同步代码块or同步函数)
- java 多线程并发问题总结
- Java多线程基础(并发、线程安全、同步、互斥)
- java.text.DateFormat 多线程并发问题
- Java_基础—多线程(线程安全问题)
- java多线程_并发问题的解析
- 关于java中多线程的问题的一点思考(什么情况下需要考虑到线程,以及线程安全的问题?)
- JAVA多线程不安全问题解决方案(多线程并发同一资源)。
- C#转Java之路之三:多线程并发容器即线程安全的容器
- JAVA高并发多线程必须懂的50个问题
- java 关于System.out.println的多线程并发问题
- JAVA多线程(一)线程安全问题产生的原因
- 【java并发】一道多线程问题
- Java多线程模拟售票程序,及线程安全问题
- Java中ThreadLocal类(解决多线程程序中并发问题的一种新思路,主要为参数的拷贝问题)
- Java 容器源码分析之HashMap多线程并发问题分析
- Java--servlet + ThreadLocal解决多线程并发问题及实例
- java进程、线程、多线程以及线程安全问题
- java:多线程、并发相关问题
- Java 多线程 线程安全问题