论文部分内容阅读
近年来,随着互联网科技的进步,人们生活水平在不断改善和提升,各种方便快捷的网上消费服务平台也随之发展迅速。越来越多的人们在购物、出行、就餐、娱乐等生活方面选择网上消费服务平台。而优惠券则在各个网上消费服务平台中起到了促进消费和吸引用户增加平台利润的作用。优惠券系统则完成了优惠券的创建、审核、分发、和使用等一系列过程,是各个网上消费服务平台系统中十分重要的一部分。传统的优惠券系统大都采用单体服务架构。随业务功能的不断改变和增多,使得系统中的功能业务之间耦合度高、性能低下、不利于维护,最终将导致系统因无法继续提供服务支持和服务拓展而被废弃。深知以上问题的原因所在,本文从问题的根源出发,提出了基于微服务架构的优惠券系统的课题,并进行微服务架构下的优惠券系统的设计与实现。在本文中所进行主要工作如下:1、本文中设计与实现的微服务架构下的优惠券系统中的各个微服务独立开发、部署、运行、维护。相对于传统单体架构实现下的优惠券系统不仅降低了系统开发成本,同时也使得系统具有高性能、高容错、高可用、易展性、可复制、易维护等特点。2、整个系统采用较新的Spring Cloud微服务治理框架技术进行开发。采用Eureka组件实现系统中各个服务的发现与注册,便于系统中各个微服务的管理和维护;构建网关组件Zuul进行服务转发并实现负载均衡以提升系统的性能;服务间通过Fegin结合Hystrix进行服务间的调用并实现熔断兜底策略使系统达到高可用效果。3、为实现系统数据处理的高性能,首先在模板微服务中创新性的提出了优惠券模板的概念用以完成较大数量的优惠券创建工作。相对于直接创建优惠券的传统方式,此方式不仅降低了运营人员的工作压力的同时也大大提升了系统的性能。4、在本文系统设计中提出了将系统中用户相关信息均保存在高速缓存Redis中,同时结合消息中间件Kafka完成异步回写数据库的数据操作方式。改变了传统系统中数据直接操作和访问数据库的方式,此方式下可快速完成系统中大量用户相关信息的查询、删除、修改等操作,使系统达到企业级数据处理能力的要求。在本文中对系统进行了功能性和非功能性需求的分析与设计,根据用户角色与业务功能对微服务架构中的各个业务功能微服务进行划分,包涵了面向运营人员的优惠券模板创建服务、面向用户的优惠券分发服务、以及最终用于在用户进行使用优惠券并进行结算的优惠券结算服务。并通过结合表格、源代码、流程图等方式将系统从整体架构到各个微服务中具体功能的实现进行阐述。同时在文末进行并通过了系统的功能性和非功能性的验证,再次证明了微服务架构下实现优惠券系统的优胜性。采用微服务架构实现的优惠券系统不仅在性能和可用性上有较为明显优势之外,还具有较强的适配性。本系统可接入绝大多数网上消费服务平台为其提供消费平台上优惠券的创建、分发、结算等功能,可大大提高网上消费平台的用户使用量和利润。