多个用户同时操作一个表的问题

WBOY
풀어 주다: 2016-06-23 13:47:53
원래의
1330명이 탐색했습니다.

请教一个问题
比如说建立了一个 会员号表  id   cardsn(会员号)   uid      cardsn是连续的 像 031001 ,031002     现在有这样一个功能   点击一个按钮增加5条记录 且是连续的  那么每次就要获取最新的会员号 然后以此为基准 连续生成5个号 插入数据库   问题就是如果多个用户同时操作这个表   那么每次获得的最新一条记录用来连续 就不准确了  请教一下大家 这个问题应该怎么解决


回复讨论(解决方案)

你可以开启事务。

如果5个用户同时对表操作,总有个先后的,你可以参考mysql事务处理,当你用户操作表的时候,会把表锁住,等操作完,其他用户才会继续操作。
如果并发很大,建议通过memcache队列的形式处理,缓解数据库表的压力。

使用队列形式处理

如果5个用户同时对表操作,总有个先后的,你可以参考mysql事务处理,当你用户操作表的时候,会把表锁住,等操作完,其他用户才会继续操作。
如果并发很大,建议通过memcache队列的形式处理,缓解数据库表的压力。

    其它的很多操作都会用到这个表  把表锁住会不会影响其它的操作

使用队列形式处理

  能不能给具体说一下思路

使用事?
先?表,?理完再解除?定。
?考: http://koda.iteye.com/blog/471713

使用事?
先?表,?理完再解除?定。
?考: http://koda.iteye.com/blog/471713

 谢谢 结贴给分

使用事?
先?表,?理完再解除?定。
?考: http://koda.iteye.com/blog/471713

 能否在问一个问题  我的数据库现在的表都是MyISAM 类型  如果使用锁定表 在解锁的形式  那其它的操作在用到用到这个表时会不会受到影响  比如说锁定表时执行的是插入操作,其它又有一个操作要查询这个表  那查询这个操作会受到影响吗?

锁表就是将原来并行的操作变成了串行操作
当然要影响性能的

锁表就是将原来并行的操作变成了串行操作
当然要影响性能的

 斑竹再请教一个问题  比如说锁表的时候 目的是向这个表插入5个记录  其它的另一个操作 比如说注册也会向这个表插入数据 那么可能会出现插入失败对吧

使用了表锁就产生了排队,但不会引起插入失败

使用了表锁就产生了排队,但不会引起插入失败

  谢谢斑竹的热心回答

 谢谢大家的热心回答

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿