失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > tp mysql多表查询 如何解决PHP并发问题 – 数据库 – 前端 mysql 并发插入性能

tp mysql多表查询 如何解决PHP并发问题 – 数据库 – 前端 mysql 并发插入性能

时间:2020-08-27 13:17:52

相关推荐

tp mysql多表查询 如何解决PHP并发问题 – 数据库 – 前端 mysql 并发插入性能

用额外的单进程处理一个队列,下单请求放到队列里,一个个处理,就不会有并发的问题了,但是要额外的开启后台进程以及延迟问题,这里暂不予考虑。这里大家可使用消息队列,大家常用到Memcacheq、Radis。

mysql乐观锁,意思是比如总库存是2,抢购事件提交时,立马将库存+1,那么此时库存是3,然后订单生成后,在更新库存前再查询一次库存(因为订单生成理所当然库存-1,但是先不急,再查一次库存返回结果是3),看看跟预期的库存数量(这里预期的库存是3)是否保持一致,不一致就回滚,提示用户库存不足。

乐观锁的特点先进行业务操作,不到万不得已不去拿锁。即“乐观”的认为拿锁多半是会成功的,因此在进行完业务操作需要实际更新数据的最后一步再去拿一下锁就好。乐观锁在数据库上的实现完全是逻辑的,不需要数据库提供特殊的支持。一般的做法是在需要锁的数据上增加一个版本号,或者时间戳。

借助文件排他锁,在处理下单请求的时候,用flock锁定一个文件,如果锁定失败说明有其他订单正在处理,此时要么等待要么直接提示用户”服务器繁忙”

为了大家能够顺利进阶中高级程序员、架构师,偶为大家准备了一套精品福利!还可加入大牛学习圈子,分享tp,laravel,Swoole,Swoft微服务等教程,各种大牛都是3-8年PHP开发者,每天还有的架构师做讲解,助你进阶中高级PHP程序员,增值涨薪!需要可关注本头条号,并且发送私信:PHP

这里没有代码块操作,具体实现方式没有写进去,有秒杀高并发的疑惑、遇到瓶颈期、想进阶中高级的PHPer可发私信:PHP

如果觉得《tp mysql多表查询 如何解决PHP并发问题 – 数据库 – 前端 mysql 并发插入性能》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。