CN113141337A - 线上抢购系统高并发场景处理方法 - Google Patents
线上抢购系统高并发场景处理方法 Download PDFInfo
- Publication number
- CN113141337A CN113141337A CN202010063417.8A CN202010063417A CN113141337A CN 113141337 A CN113141337 A CN 113141337A CN 202010063417 A CN202010063417 A CN 202010063417A CN 113141337 A CN113141337 A CN 113141337A
- Authority
- CN
- China
- Prior art keywords
- user
- purchase
- request
- purchase request
- qualification
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 8
- 238000012797 qualification Methods 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims description 16
- 238000000034 method Methods 0.000 claims description 15
- 230000003068 static effect Effects 0.000 claims description 7
- 241000700189 Hystrix <Rodentia> Species 0.000 claims description 3
- 230000000694 effects Effects 0.000 description 2
- 241000283690 Bos taurus Species 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0876—Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/90—Buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Computer Security & Cryptography (AREA)
- Marketing (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Power Engineering (AREA)
- Development Economics (AREA)
- Economics (AREA)
- General Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了线上抢购系统高并发场景处理方法,包括基于用户登录请求获取用户资格;判断用户资格是否有效,若否,则返回操作失败结果,若是,则:判断用户当前IP是否在IP白名单内,若是,则返回操作失败结果,若否,则:将用户当前IP通过nginx配置至IP白名单内;接收用户的购买请求,并将该用户发送的购买请求推送至其专有的消息队列中;从消息队列中只提取一个购买请求进行购买操作,判断是否成功购买,若否,则返回操作失败结果,若是,则:将购买请求写入服务器,并通过WebSocket传递成交记录给前端前台。本发明解决用户重复发送请求的问题。
Description
技术领域
本发明属于高并发场景处理技术领域,尤其涉及一种线上抢购系统高并发场景处理方法。
背景技术
随着互联网的发展和电商平台的普及,在线抢购的活动几乎每时每刻都发生在我们的生活圈里。抢购进行时服务器会收到了“海量”的请求,但实际“海量”的请求里面的有大量的垃圾请求。不少用户及黄牛,为了抢到商品,会使用“刷票工具”等类型的辅助工具,帮助他们发送尽可能多的请求到服务器。或制作强大的自动请求脚本。如何有效的防止这种作弊手段是亟待解决的问题。
发明内容
本发明所要解决的技术问题在于针对上述现有技术中的不足,提供线上抢购系统高并发场景处理方法,其从对用户资格进行判断,筛除掉无效的用户,进一步对用户的IP进行判断,使一个IP上只能有一个用户,并通过nginx配置进行负载均衡,最后为每个用户设立一个专有的消息队列存放发送的购买请求,解决用户重复发送请求的问题。
为解决上述技术问题,本发明采用的技术方案是:一种线上抢购系统高并发场景处理方法,包括:基于用户登录请求获取用户资格;
判断用户资格是否有效,若否,则返回操作失败结果,若是,则:
判断用户当前IP是否在IP白名单内,若是,则返回操作失败结果,若否,则:将用户当前IP通过nginx配置至IP白名单内;
接收用户的购买请求,并将该用户发送的购买请求推送至其专有的消息队列中;从消息队列中只提取一个购买请求进行购买操作,判断是否成功购买,若否,则返回操作失败结果,若是,则:将购买请求写入服务器,并通过WebSocket传递成交记录给前端前台。
上述线上抢购系统高并发场景处理方法,判断用户资格是否有效时,包括:判断用户资格是否已经缓存在redis中,若是,则用户资格有效。
上述线上抢购系统高并发场景处理方法,还包括:当用户下线时,将用户在IP白名单内的IP删除。
上述线上抢购系统高并发场景处理方法,还包括:利用元素静态化处理将前端页面上除“抢购按钮”外的其他元素处理为静态数据,并将静态数据缓存在浏览器和CDN上。
上述线上抢购系统高并发场景处理方法,在所述服务器上配置hystrix熔断机制。
本发明与现有技术相比具有以下优点:
1、本发明通过对用户的资格进行判断,筛除掉无效的用户,减少对服务器的访问请求源。
2、本发明通过对用户的IP进行判断,使一个IP上只能有一个用户,有效防止一个IP上挂设多个账号的问题。
3、本发明通过对每个用户设立一个专有的消息队列存放发送的购买请求,解决用户重复发送请求的问题。
综上所述,本发明其从对用户资格进行判断,筛除掉无效的用户,进一步,并通过nginx配置进行负载均衡,最后为每个用户设立一个专有的消息队列存放发送的购买请求,解决用户重复发送请求的问题。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
图1为本发明的方法流程图。
具体实施方式
如图1所示,一种线上抢购系统高并发场景处理方法,包括以下步骤:
S1、基于用户登录请求获取用户资格;
当在线上抢购系统中需要对高并发场景的海量请求进行处理时,首先获取用户的资格信息,用户资格由用户ID和系统发放给用户的权限组成。
S2、判断用户资格是否有效,若否,则进入S3;若是,则进入S4;
判断用户资格是否有效时,包括:判断用户资格是否已经缓存在redis中,若是,则用户资格有效。通过在抢购活动开始前,将有效的用户资格缓存在redis中,一方面能够有效的筛除掉无效的用户,减少对服务器的访问请求源,另一方面能够减少服务器的压力。
S3、返回操作失败结果;
S4、判断用户当前IP是否在IP白名单内,若是,则进入S3;若否,则进入S5;
S5、将用户当前IP通过nginx配置至IP白名单内;
判断用户当前IP是否在IP白名单内,若是,则说明当前IP已经有其他用户在用,返回操作失败结果;若否,则将用户当前IP通过nginx配置至IP白名单内;通过这样,一方面使一个IP上只能有一个用户,有效防止一个IP上挂设多个账号的问题,另一方面通过nginx的反向代理实现负载均衡。
S6、接收用户的购买请求,并将该用户发送的购买请求推送至其专有的消息队列中;
S7、从消息队列中只提取一个购买请求进行购买操作,判断是否成功购买,若否,则进入S3,若是,则进入S8;
通过对用户设立一个专有的消息队列存放发送的购买请求,使用户重复发送的购买请求均只能存放在消息队列中,最后只输出一个购买请求,解决用户重复发送请求的问题。
购买请求进行购买操作为现有技术,此处不在赘述。
S8、将购买请求写入服务器,并通过WebSocket传递成交记录给前端前台。
本实施例中,还包括:S9、当用户下线时,将用户在IP白名单内的IP删除。通过此方法,使用户在更换IP进行登录执行抢购操作能够实现。
本实施例中,还包括:利用元素静态化处理将前端页面上除“抢购按钮”外的其他元素处理为静态数据,并将静态数据缓存在浏览器和CDN上。
对于抢购商品时的前端页面尽量将能静态化的元素静态化处理,除了抢购按钮需要服务器进行动态判断,其他的静态数据可以缓存在浏览器和CDN上。这样,抢购前刷新页面导致的流量进入服务器的流量只有很小的一部分。
本实施例中,在所述服务器上配置hystrix熔断机制,能够保证在抢购系统异常情况下也能走通整个抢购流程。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何限制,凡是根据本发明技术实质对以上实施例所作的任何简单修改、变更以及等效结构变化,均仍属于本发明技术方案的保护范围内。
Claims (5)
1.线上抢购系统高并发场景处理方法,其特征在于,包括:
基于用户登录请求获取用户资格;
判断用户资格是否有效,若否,则返回操作失败结果,若是,则:
判断用户当前IP是否在IP白名单内,若是,则返回操作失败结果,若否,则:
将用户当前IP通过nginx配置至IP白名单内;
接收用户的购买请求,并将该用户发送的购买请求推送至其专有的消息队列中;
从消息队列中只提取一个购买请求进行购买操作,判断是否成功购买,若否,则返回操作失败结果,若是,则:
将购买请求写入服务器,并通过WebSocket传递成交记录给前端前台。
2.按照权利要求1所述的线上抢购系统高并发场景处理方法,其特征在于,判断用户资格是否有效时,包括:判断用户资格是否已经缓存在redis中,若是,则用户资格有效。
3.按照权利要求1或2所述的线上抢购系统高并发场景处理方法,其特征在于,还包括:当用户下线时,将用户在IP白名单内的IP删除。
4.按照权利要求1或2所述的线上抢购系统高并发场景处理方法,其特征在于,还包括:利用元素静态化处理将前端页面上除“抢购按钮”外的其他元素处理为静态数据,并将静态数据缓存在浏览器和CDN上。
5.按照权利要求1或2所述的线上抢购系统高并发场景处理方法,其特征在于:在所述服务器上配置hystrix熔断机制。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010063417.8A CN113141337A (zh) | 2020-01-19 | 2020-01-19 | 线上抢购系统高并发场景处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010063417.8A CN113141337A (zh) | 2020-01-19 | 2020-01-19 | 线上抢购系统高并发场景处理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113141337A true CN113141337A (zh) | 2021-07-20 |
Family
ID=76808822
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010063417.8A Pending CN113141337A (zh) | 2020-01-19 | 2020-01-19 | 线上抢购系统高并发场景处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113141337A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598703A (zh) * | 2022-01-26 | 2022-06-07 | 银盛通信有限公司 | 一种基于移动转售系统百万级并发订购流量包的方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103825835A (zh) * | 2013-11-29 | 2014-05-28 | 中邮科通信技术股份有限公司 | 一种互联网高并发秒杀系统 |
CN105160572A (zh) * | 2015-09-30 | 2015-12-16 | 努比亚技术有限公司 | 控制订单生成的装置、方法及秒杀系统 |
CN106713332A (zh) * | 2016-12-30 | 2017-05-24 | 山石网科通信技术有限公司 | 网络数据的处理方法、装置和系统 |
CN106997546A (zh) * | 2016-01-26 | 2017-08-01 | 中国移动通信集团安徽有限公司 | 一种订单处理方法及装置 |
CN107342966A (zh) * | 2016-04-29 | 2017-11-10 | 北京京东尚科信息技术有限公司 | 权限凭证发放方法和装置 |
CN108418821A (zh) * | 2018-03-06 | 2018-08-17 | 北京焦点新干线信息技术有限公司 | 基于Redis与Kafka的线上抢购系统高并发场景处理方法及装置 |
CN110148034A (zh) * | 2019-04-24 | 2019-08-20 | 珠海市珠澳跨境工业区好易通科技有限公司 | 一种网购系统架构优装置及方法 |
-
2020
- 2020-01-19 CN CN202010063417.8A patent/CN113141337A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103825835A (zh) * | 2013-11-29 | 2014-05-28 | 中邮科通信技术股份有限公司 | 一种互联网高并发秒杀系统 |
CN105160572A (zh) * | 2015-09-30 | 2015-12-16 | 努比亚技术有限公司 | 控制订单生成的装置、方法及秒杀系统 |
CN106997546A (zh) * | 2016-01-26 | 2017-08-01 | 中国移动通信集团安徽有限公司 | 一种订单处理方法及装置 |
CN107342966A (zh) * | 2016-04-29 | 2017-11-10 | 北京京东尚科信息技术有限公司 | 权限凭证发放方法和装置 |
CN106713332A (zh) * | 2016-12-30 | 2017-05-24 | 山石网科通信技术有限公司 | 网络数据的处理方法、装置和系统 |
CN108418821A (zh) * | 2018-03-06 | 2018-08-17 | 北京焦点新干线信息技术有限公司 | 基于Redis与Kafka的线上抢购系统高并发场景处理方法及装置 |
CN110148034A (zh) * | 2019-04-24 | 2019-08-20 | 珠海市珠澳跨境工业区好易通科技有限公司 | 一种网购系统架构优装置及方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114598703A (zh) * | 2022-01-26 | 2022-06-07 | 银盛通信有限公司 | 一种基于移动转售系统百万级并发订购流量包的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7953861B2 (en) | Managing session state for web applications | |
CN110971655B (zh) | 离线客户端重放和同步 | |
EP1264261B1 (en) | Monitoring operation of and interaction with services provided over a network | |
US7475154B2 (en) | Splicing proxied web requests with callback for subsequent requests | |
CN103001973A (zh) | 基于二维码的登录控制方法、系统和装置 | |
US7870422B2 (en) | Apparatus and method for backing up data on server using at least one cache as a client | |
US20100174817A1 (en) | Splicing proxied web requests with callback for subsequent requests | |
US20080021696A1 (en) | System and method of providing a fast path link for an identified set of data | |
CN113110975A (zh) | 数据访问方法、装置、设备和介质 | |
CN113506137A (zh) | 一种电子邮件营销分析方法、系统和设备 | |
CN112769876B (zh) | 一种设备通道信息获取方法、装置、设备和介质 | |
CN113141337A (zh) | 线上抢购系统高并发场景处理方法 | |
CN111200650B (zh) | 数据传输方法、装置、系统、设备及介质 | |
JP4906870B2 (ja) | サーバ・サイド動的ページの実行のための方法、システム、およびコンピュータ・プログラム | |
CN109040331B (zh) | 电子名片的处理方法、装置、计算设备和存储介质 | |
CN113778709B (zh) | 接口调用方法、装置、服务器及存储介质 | |
CN111913732B (zh) | 一种服务更新方法、装置及管理服务器、存储介质 | |
US11210205B2 (en) | Application debugging | |
CN111935316B (zh) | 一种前端设备目录获取方法及装置 | |
JP2018181012A (ja) | 業務連携システムおよび業務連携方法 | |
US11755397B2 (en) | Systems and methods for processing of messages subject to dead letter queues in representational state transfer architectures to prevent data loss in cloud-based computing environments | |
CN110175305B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111368512B (zh) | 一种业务数据的转换方法、装置、设备及存储介质 | |
WO2018184509A1 (zh) | 一种数据处理的方法和装置 | |
CN115766107A (zh) | 用户的登陆状态确认方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210720 |