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)
查看全文
相关阅读:
H3C 路由策略(人为打环)
linux nfs配置
linux vsftp 简单配置
linux vg lv pv
linux sshd 登录不需要密码
linux dhcp 简单配置
linux pxe 安装Centos7
分别使用laravel安装器和composer安装laravel!
阻止按钮快速点击
检测页面是否允许使用Flash
原文地址:https://www.cnblogs.com/gossip/p/5788623.html
最新文章
接口开发中jsonschema的使用
容斥原理
全排列的编码与解码——康托展开
Lucas定理
最小费用最大流
有上下界的网络流
数字统计类题目的非数位DP解法
支配树
Tarjan求LCA(离线)
身份验证
热门文章
IIS Internet Information Service
namespace命名空间
Visio Yoeman
python连接redis
sqlserver建立相同的表结构
SQLServer基本操作
数据库编程基本
SqlAlchemy基本
连接postgresql
linux samba
Copyright © 2011-2022 走看看