基于Redis的电商秒杀系统的设计与实现开题报告

 2021-12-04 19:26:55

1. 研究目的与意义(文献综述)

在如今的互联网电商领域,秒杀活动是指电商平台或者商家发布某些价格极低、数量有限的商品,有意愿的买家集中在同一时刻抢购这些商品的营销策略。由于秒杀商品的价格大多数情况下比正常价格低很多,因此往往一上架就被抢购一空,所以被形象的称为“秒杀”[1]。 伴随着电商行业的不断发展,各个电商平台之间竞争日趋激烈。而在电商的营销活动中,秒杀不仅能有效地刺激用户消费愿望[2],而且对用户具有巨大的吸引力[3]。双十一购物节[4]的秒杀每年吸引成千上万的消费者,交易量高达上千亿。秒杀活动不仅能为消费者带来一定的利好,对于电商平台而言也尤为重要。在这种情况下,研究高并发性和高可用性的秒杀系统具有非常实际的意义。

结合秒杀活动的具体业务分析,其技术难点首先在于瞬时的高并发[5]。在进行秒杀活动时,通常会出现大量用户同时下单同一商品的情况,电商平台的下单接口将在这一时刻涌入大量流量[6],如何保证此时整个电商平台的可用性是值得探讨的问题。此外,由于秒杀商品的库存往往是不足的,为了防止商品超卖,需要确保秒杀时减库存和生成订单的操作是原子的[7],同时在秒杀商品卖完之后要防止产生更多的商品订单。秒杀活动在系统安全层面同样存在问题,机器人恶意抢购问题[3]不仅会使秒杀的营销效益下降,还会使电商平台的口碑下滑,如何避免此类问题同样值得研究。

在web服务层面,可用性是指web应用程序所提供的服务一直保持可用的状态,随时准备处理用户请求,并可以返回正确的响应[8]。在研究系统可用性时,可以将问题按照web服务器架构的三个方面来分析:基础设施可用性,中间件可用性与应用程序可用性[9]。首先,可以通过选用可用性更好的云服务器来确保基础设施的可用性。在进行中间件选型时,可以通过对比中间件的性能、可伸缩性以及业务适用性来进行选择,以保障中间件可用性[10]。而在提高应用可用性的问题上,缓存技术的使用往往能使应用层的响应时间降低[11]。nosql凭借其常驻内存的快速性,在作为web应用程序缓存方面应用广泛[12],而redis的高性能让在其作为缓存使用时拥有很好的表现[13]。具体而言,可以使用redis在持久层和业务接口层之间搭建缓存,来存储业务对象,这样做能够提高一些被重复访问的业务对象的访问速度,同时减小了持久层的负载[14]。同时,对于秒杀业务而言,为了能够让系统在瞬时高并发的环境下保持可用性,往往会选择使用消息中间件来作为缓冲[15],其基本原理是将瞬时产生的超出接口处理速度的大量请求加入待处理的消息队列,从而减轻接口的负载,防止接口和系统失去响应,然后接口会异步处理消息队列中的所有请求。使用这种方法时系统性能和可用性要比直接在服务器接口之前搭建网关优越许多[16]

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

2. 研究的基本内容与方案

本设计将在实现基本电商平台功能的基础上,针对秒杀活动的具体业务,对系统可用性进行研究,设计出秒杀系统的整体架构,然后提出相应的技术方案,最终对该系统架构进行实现与测试。

研究的基本内容包括:

1) 了解电商秒杀系统的应用特征,分析其技术问题,并对相应方案进行讨论。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 研究计划与安排

第1- 4周:查阅相关文献资料,明确研究内容,了解所需的相关知识。完成英语论文翻译和完成开题报告。

第5-10周:完成电商秒杀系统的架构设计,确定技术方案并予以实现。

第11-14周:进行功能测试和性能测试,完成论文撰写工作。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

4. 参考文献(12篇以上)

[1] 萧洁. 浅析电子商务环境下的促销策略[J]. 现代商业, 2011(09): 203 202.[2] 王力平. 商务网站“秒杀”营销对消费者网上购物影响的实证研究——以京东网上商城“夺宝岛”“秒杀”营销为例[J]. 消费经济, 2012, 28(05): 59–61.[3] 张小红. 电子商务营销策略之秒杀[J]. 机械管理开发, 2011(02): 150–151.[4] Akram U, Hui P, Khan M K等. Online Impulse Buying on “Double Eleven” Shopping Festival: An Empirical Investigation of Utilitarian and Hedonic Motivations[C]//XU J, GEN M, HAJIYEV A等. Proceedings of the Eleventh International Conference on Management Science and Engineering Management. Springer International Publishing, 2018: 680–692.[5] Alrifai M, Dolog P, Nejdl W. Transactions concurrency control in web service environment[C]//Proceedings of ECOWS 2006: Fourth European Conference on Web Services. 2006: 109–118.[6] 邵斐. 面向电子商务的秒杀系统设计与实现[J]. 微型机与应用, 2015, 34(06): 84–87.[7] Little M C. Constructing reliable Web applications using atomic actions[J]. Computer Networks, 1997, 29(8–13): 1281–1290.[8] Bhagwan R, Savage S, Voelker G M. Understanding Availability BT - Peer-to-Peer Systems II[C]//Springer Berlin Heidelberg, 2003: 256–267.[9] Abraham S, Thomas M, Thomas J. Enhancing web services availability[C]//Proceedings - ICEBE 2005: IEEE International Conference on e-Business Engineering. 2005, 2005: 352–355.[10] Kanso A, Gherbi A, Lemieux Y. Middleware-managed high availability for cloud applications[J]. International Journal of Information and Communication Technology, 2018, 12(1–2): 186–208.[11] Walkowiak T, Kamiński W. Influence of Data Delivery on Availability of Web Systems[C]//Procedia Engineering. Elsevier Ltd, 2017, 178: 223–232.[12] Hecht R, Jablonski S. NoSQL evaluation: A use case oriented survey[C]//2011 International Conference on Cloud and Service Computing. 2011: 336–341.[13] Gao X, Fang X. High-performance distributed cache architecture based on redis[C]//Lecture Notes in Electrical Engineering. Springer Verlag, 2014, 270 LNEE(VOL. 1): 105–111.[14] Paksula M. Persisting Objects in Redis Key-Value Database[J]. Science, 2010: 6.[15] Qiu Y. Design and Implementation of High Performance Advertising Deduction System[C]//Proceedings - 2nd International Conference on Computer Network, Electronic and Automation, ICCNEA 2019. 2019: 497–501.[16] Hong X J, Sik Yang H, Kim Y H. Performance Analysis of RESTful API and RabbitMQ for Microservice Web Application[C]//9th International Conference on Information and Communication Technology Convergence: ICT Convergence Powered by Smart Intelligence, ICTC 2018. Institute of Electrical and Electronics Engineers Inc., 2018: 257–259.

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。