zoukankan
html css js c++ java
高并发可以不加锁吗
最近遇到别人问的一个问题,如下:
高并发下修改商品库存,加锁会导致性能问题,怎样实现在不加锁的情况下实现高性能修改库存?
我的答案:
1、一般对于并发处理都需要加锁,否则会导致共享变量不可见问题,尽量将锁的力度变小
2、如果确认不能或不想加锁,则做串行化处理,我给的解决方案是消息队列
3、
http://www.zhihu.com/question/36560619
这
里有说
单生产者和单消费者 的队列是可以做到真正无锁,看不懂
4、
http://zhidao.baidu.com/link?url=qDk1lJax-3v08Bng7Ignf8Zk4gVwUAr0118lzm3lRqTiaBpbe5j5x6f9V8yBpoq5zulHudZb7X3pRs8X51Xxlz80VrgskxMaTjyGklUmZ2e
这篇文章也说了做串行化处理,消息队列的线程不做IO操作,而是单独开线程从消息队列取数据进行IO操作
结论:
问我问题的人说已经找到了不加锁,不用消息队列解决问题的方法,但是不告诉我。。。
来自为知笔记(Wiz)
查看全文
相关阅读:
智课雅思词汇---二十、前缀syn-sym-syl是什么意思
运行php的时候出现计算机中丢失 MSVCR110.dll怎么解决
解决PHP5.6版本“No input file specified”的问题
PhpSpreadsheet如何读取excel文件
[thinkphp使用phpspreadsheet时出现]Cannot redeclare xxxxxx() (previously declared in C:WWWxxx.xxx:xxx)
thinkphp中如何使用phpspreadsheet插件
thinkphp中composer方式安装的插件如何使用
phpexcel如何读取excel的数据和如何导出数据到excel
Composer如何安装(安装注意事项)
enq: TX
原文地址:https://www.cnblogs.com/gossip/p/5788623.html
最新文章
AVL树的插入删除查找算法实现和分析-1
MongoDB系列之三(副本集配置)
免插件打造wordpress投稿页面
jquery 获取 TABLE单元格的值
Linux下mpi环境配置与执行步骤(Ubuntu为例)
'datetime.datetime' has no attribute 'datetime'问题
android录音功能的实现
用jQuery实现鼠标在table上移动进行样式变化
Android UI 学习 自定义的布局 平滑移动 VelocityTracker()
Android:ViewPager详细解释(异步网络负载图片,有图片缓存,)并与导航点
热门文章
LeetCode——Linked List Cycle II
Android 定义自己的学习(5)它们的定义Progressbar
HDU 4085 Steiner树
【日报C在23】堆和栈的深入了解
13周 工程1 点,全面关系
hdu 5060 War
【核心研究】消息队列_MessageQueue
动态代理的事务封装
支-14. 简单的计算器(10)
智课雅思词汇---二十一、名词性后缀acity是什么意思
Copyright © 2011-2022 走看看