技术-关于高并发 数量剩余的问题

问题描述

关于高并发 数量剩余的问题 5C
我现在在做一个类似网易一元抢宝的项目(这个项目不需要生成订单),在支付结算的时候出现了好多问题,求大神帮我解决。
第一点:
加入该商品剩余商品50件,同时有好几百个人都把这个商品加入了购物车,第一个人和第二个人都想买30件商品,第一个人付款成功了,这个时候剩余商品就会变成了20件,但是第二个人此时购物车里如果不刷新的话还是能够买50件商品的,这个时候我该怎么解决这个问题?

第二点:
还上面的情况,两个人都买30件商品,同时进入了支付界面,第一个人比第二个人先购买了30了支付成功,第二个购买的30个按理说是不能购买到的,那这个问题怎么办?

第三点:
最后一件商品,多个人都加入了购物车,同时进入了支付页面,第一个人完成了支付,后面的人应该是支付失败的,这个该怎么办?

       其实我绝对这个就是一个问题,怎么解决高并发问题,我知道有个叫memcache 队列大概能解决,但是我也不会这个东西啊,求大神仔细说说流程,用到了哪些技术,怎么实现或者搭建这个技术。。。。。万分感谢  

解决方案

memcache redis 这里的作数据缓存队列,内存数据库的效率高点。开始的时候商品放入到队列中,一个人一个事务,排队操作。
当然1000个人并发和10000个人并发处理是不一样的,并发大的做负载均衡。

因为没遇到过此类的需求,有可能说的不对见谅。

解决方案二:
先把每个人的提交等,放到Redis的队列中,然后再从队列中按顺序一个个取出来执行,这个时候,购买需要有事务处理,比如通过数据库等,这样第一个人购买成功后,第二个购买的时候,数据库只剩20个商品了,因为30个购买就失败了,然后把失败返回给客户端

时间: 2024-09-28 05:34:28

技术-关于高并发 数量剩余的问题的相关文章

【干货合集】大流量与高并发:双11技术盘点(二)

峰会专题:https://yq.aliyun.com/activity/112 报名入口:http://yq.aliyun.com/webinar/join/49?spm=5176.8155509.437644.12.F2Xi5N 从2009年第一届双十一购物节到2015年双十一全天912.17亿元的交易额,"双十一"当天订单创建峰值增长了350倍(每秒14万笔),支付峰值 (每秒8.59万笔)增长了430倍.为了保证越来越多购物者的用户体验,在IT基础设施上,阿里一次又一次地遭遇并超

nginx技术(1)nginx高并发介绍和nginx安装

nginx介绍和安装 一,nginx为什么支持高并发?epoll和select的区别 开发高性能网络程序时,windows开发者们言必称iocp,linux开发者们则言必称epoll.nginx就是用这种方式编写的.大家都明白epoll是一种IO多路复用技术,可以非常高效的处理数以百万计的socket句柄,比起以前的select和poll效率高大发了.我们用起epoll来都感觉挺爽,确实快,那么,它到底为什么可以高速处理这么多并发连接呢? 先简单回顾下如何使用C库封装的3个epoll系统调用吧.

97期:大流量与高并发—双11技术盘点

本期头条   [峰会回顾]8月30-31日我们成功举办了"蚂蚁金服&阿里云在线金融技术峰会",本次峰会聚焦数据库.应用架构.移动开发.机器学习等热门领域,帮助金融业技术开发者深入解析互联网应用的前沿应用与技术实践.目前活动视频.整理文章已经出炉,点击收藏. • 大流量与高并发:双11技术盘点 • 阿里云开源DataX 3.0:异构数据源离线同步工具,支持10余款主流开源数据库 最新资讯   阿里云中标国税总局大数据专有云项目,中标金额近四千万元点击查看 据中国政府采购网公示消息

开发支持高并发的webservice,现在一般用哪些技术?

问题描述 开发支持高并发的webservice,现在一般用哪些技术? 开发支持高并发的webservice,现在一般用哪些技术?python?c++? 解决方案 你可以试试node.js 解决方案二: 可以尝试从硬件.中间件.服务端程序设计几个方面来看应用软件可以考虑对数据结构.线程.实时运算与缓存等方面提升分发.排队.复用等增加效率比如对请求的处理器可以考虑分门别类给不同模块处理,数据存储可以考虑循环队列或堆栈等存取效率的差异,重复计算结果可考虑缓存复用 中间件的话,对请求的代理分发,结合硬件

9月20-21日,十位阿里技术大牛带你玩转大流量与高并发

据工信部公布的<2016年1月份通信业经济运行情况>显示,2016年1月,中国移动互联网用户总数达9.8亿户,其中移动互联网接入流量累计达5.4亿G,同比增长120.9%.,固定宽带接入时长达4.8万亿分钟.越来越多的用户及在线时间为业务突破和创新带来了无限可能,然而设计和打造支撑海量用户的应用却成为各个机构不得不面对的问题. 负载均衡.数据库.中间件.大数据,如何将技术演绎到极限? 从2009年第一届双十一购物节到2015年双十一全天912.17亿元的交易额,"双十一"当

Apache Spark技术实战(四)spark-submit常见问题及其解决 &amp;CassandraRDD高并发数据读取实现剖析

<一>spark-submit常见问题及其解决 概要 编写了独立运行的Spark Application之后,需要将其提交到Spark Cluster中运行,一般会采用spark-submit来进行应用的提交,在使用spark-submit的过程中,有哪些事情需要注意的呢? 本文试就此做一个小小的总结. spark-defaults.conf Spark-defaults.conf的作用范围要搞清楚,编辑driver所在机器上的spark-defaults.conf,该文件会影响 到drive

高并发系统数据幂等的技术尝试

前言介绍 在系统开发过程中,经常遇到数据重复插入.重复更新.消息重发发送等等问题,因为应用系统的复杂逻辑以及网络交互存在的不确定性,会导致这一重复现象,但是有些逻辑是需要有幂等特性的,否则造成的后果会比较严重,例如订单重复创建,这时候带来的问题可是非同一般啊. 什么是系统的幂等性 幂等是数据中得一个概念,表示N次变换和1次变换的结果相同. 高并发的系统如何保证幂等性 查询API 查询的API,可以说是天然的幂等性,因为你查询一次和查询两次,对于系统来讲,没有任何数据的变更,所以,查询一次和查询多

9种高性能可用高并发的技术架构

1.分层 分层是企业应用系统中最常见的一种架构模式,将系统在横向维度上切分成几个部分,每个部分负责一部分相对简单并比较单一的职责,然后通过上层对下层的依赖和调度组成一个完整的系统. 在网站的分层架构中,常见的为3层,即应用层.服务层.数据层.应用层具体负责业务和视图的展示;服务层为应用层提供服务支持;数据库提供数据存储访问服务,如数据库.缓存.文件.搜索引擎等. 分层架构是逻辑上的,在物理部署上,三层架构可以部署在同一个物理机器上,但是随着网站业务的发展,必然需要对已经分层的模块分离部署,即三层

高性能高并发服务的瓶颈及突破思路

关于高性能高并发服务这个概念大家应该也都比较熟悉了,今天我主要是想讲一下对于如何做一个高性能高并发服务架构的一些自己的思考. 本次分享主要包括三个部分: 1. 服务的瓶颈有哪些 2. 如何提升整体服务的性能及并发 3. 如何提升单机服务的性能及并发 一.服务的瓶颈有哪些 通常来说程序的定义是算法+数据结构+数据,算法简单的理解就是一种计算方式,数据结构顾名思义是一种存储组织数据的结构,这两者体现了程序需要用到的计算机资源涉及到CPU资源.内存资源,而数据部分除了内存资源,往往还可能涉及到硬盘资源