3.1 功能性需求分析
功能的需□□□□求决定了□□□电商平台□□□□必须提供□□的功能服□□□务,对功能进□□行分析划□□□□分出平台□□□□必须完成□□□的所有功□□□□能。经过早期□□对用户和□□□□市场的调□□研,微服务高□□□并发的电□□□商平台功◉能模块主○要可以划□□□分为如下♦六个微服□□□□务,分别是商□□□品微服务、订单管理□□□微服务、购物车管□□□理微服务、用户管理□□□微服务、秒杀微服▽务和评论□□微服务。
3.1.1 商品微服务的需求分析
商品微服□□□务是微服□□□务高并发◥电商平台□□最重要的□□□□模块之一。此微服务□□□□提供的功□□能包括门□□□□户系统的▼商品信息□□的展示,如商品标□□□题、图片、价格、品牌、分类等,商品的搜□□□索,如按条件★搜索、排序等搜□□□□素展示商※品的信息。还有后台□□□的商品的□□管理,包括商品●的增加删▼除修改查☆询,商品品牌◢的增加删□□除修改查▼询,商品的收□□□□藏查询,商品的浏□□□览记录等❖功能。商品微服□□□务功能用□□□例图如图3-1,3-2所示。

图3-1 商品微服务用户功能用例图

图3-2 商品微服务管理员功能用例图
3.1.2 用户微服务的需求分析
用户微服务在前台门户系统为用户提供登录、注册、查看修改自己的个人信息,查看自己的足迹的功能。在后台管理系统为管理员提供用户管理包含增加删除修改查询用户,用户信息管理包括用户信息查询修改删除,用户的地址管理包括用户地址的增加删除修改查询的功能。用户微服务功能的用例图如图3-3,3-4所示。

图3-3 用户微服务用户功能用例图

图3-4 用户微服务管理员功能用例图
3.1.3 订单微服务的需求分析
订单微服◈务在前台□□□门户系统□□为用户提□□□供下订单、查询订单、确认收货、退款、退货等功★能。在后台管□□□理系统为□□□管理员提※供等待发□□货的订单□□□管理包括□□□等待发货□□订单查询、删除、修改、发货,发货中的□□订单管理□□□□包括发货□□中的订单□□查询、删除、修改,确认收货□□□的订单管□□□□理包括确□□□□认收货订□□□单查询、删除、修改、确认收货,退款退货▼管理包括□□退款退货◤的订单查□□询、修改、删除、退款退货□□□□等功能。订单微服□□□务功能的□□用例图如□□□□图3-5,3-6所示。

图3-5 订单微服务用户功能用例图
图3-6 订单微服务管理员功能用例图
3.1.4 购物车微服务的需求分析
购物车微□□□服务在前□□□□台门户系□□□统为用户□□□提供添加□□商品到购□□□物车,修改商品▽数量,删除购物□□车里的商□□□品,商品结算□□□□等功能。在后台管丨理系统为□□管理员提□□□供购物车□□□管理包括□□□购物车商◆品的查询、修改、删除等功□□□□能。其作用是□□为了使用□□□户能够更●好地管理□□自己喜欢□□□和感兴趣□□的商品。购物车微□□服务功能□□的用例图□□□如图3-7,3-8所示。

图3-7 购物车微服务用户功能用例图
图3-8 购物车微服务管理员功能用例图
3.1.5 评论微服务的需求分析
评论微服□□□□务主要在□□□门户系统★为用户提□□供确认收◢货后的商□□□□品评价以□□及待评价◇订单查询□□□□的功能,在后台管□□□□理系统为☆管理员提□□供待评价□□管理包括□□□待评价的□□□订单查询、删除,已评价商□□□□品订单管□□□□理包括已□□□评价订单□□查询、删除、修改等功◎能。评论微服□□务功能用□□□例图如图3-9,3-10所示。

图3-9 评论微服务用户功能用例图
图3-10 评论微服务管理员功能用例图
3.1.6 秒杀微服务的需求分析
秒杀微服★务主要提◎供能够在□□□高并发情□□□□况下满足★用户秒杀◥商品的功□□□能,用户登录□□系统后可□□□□进入秒杀□□□□页面查看□□□待秒杀、正在秒杀•和已经秒□□□杀结束的□□□商品。管理可以□□□对秒杀商□□□□品进行管◥理,设置秒杀□□□开始和结□□束的时间,上下架秒□□□杀商品。秒杀微服□□□□务的用例□□□□图如图3-11,3-12所示。

图3-11 秒杀微服务用户功能用例图
图3-12 秒杀微服务管理员功能用例图
3.2 非功能性需求分析
基于微服□□务高并发♦的电商平□□□台的非功□□□□能性需求□□□也非常重□□要,这能让用□□户的体验□□更好,使系统更丨加稳定安□□全,使后期系※统维护更□□□□加容易,系统的功□□□□能拓展更□□□加简单。主要的非□□功能性需□□求包括服□□□务的高可□□□□用性、系统的高◢性能、高并发、系统可复丨用性。
(1)高可用性:高可用性□□通常用于◈描述特殊□□□□的系统设□□计,以缩短停□□机时间并□□确保其高□□□□质量的服□□□务。如果系统□□□□更稳定,则持续时□□□□间会更长。本文在构□□□□建单个服✦务提供商□□□的服务体✦系结构时,可以保证□□□当单个服□□□□务提供商◈出现故障□□□时,将用户的□□□□请求转移□□□到另一个□□□□服务,即当出现□□故障时,可以快速□□□□提高服务•的可用性。
(2)高性能性:对软件性□□□能的要求□□通常基于□□用户的体□□验。高性能的□□□□软件要求★通常包括❖最大的并□□□□发用户数、系统响应◣时间、巨大的数◉据处理能□□□□力等。对于上述□□要求,使用微服□□□□务体系结◇构构建电□□□子商务平□□台能够提□□□高系统的□□性能。电商平台□□正是通过□□微服务体□□系结构中□□□□各个微服□□务的独立▲部署和运□□□行,使服务易□□□于在多台□□□服务器上□□□实现和扩□□展,能够有效□□□地处理高□□□□并发问题,以及提高◎系统的响丨应时间。
(3)高并发性:而作为电□□□子商务平□□□台,其业务逻丨辑非常复□□□杂,用户的访□□□问量相当□□□□大。而当用户□□□发起请求□□□□时,系统能够◈给出快速□□□□响应,尽可能的□□□□减少用户□□等待响应□□□的时间,提高用户□□的体验感◇是非常有□□必要的。故此,应尽可能※提高系统□□的高并发◉能力,以减少请□□□□求失败的◤次数。可以从业□□□□务层、数据库层、和网关层□□等方面进□□□□行设计以□□□□提高整个□□系统高并□□发能力。
(4)可复用性:微服务高□□□□并发的电□□□□子商务平□□□□台基于微□□□□服务体系□□□□结构构建·的,目的是将❖复杂的系□□统按功能□□模块划分✦为一部分□□□□小的微服□□□务,所有的微□□□服务都是丨独立实现□□□□和运行的,因此在平□□□□台在需要□□□复用时时□□□□非常方便□□□□快捷。
3.3 服务注册与发现需求分析
微服务架构模式下,各个微服务的管理是非常重要的。各个微服务都可能可在运行时停止并改变其配置。而面对这种变化,不能依赖开发者一个一个的维护服务信息。因此,它是实现服务发现作为一种动态方式的最有效手段。第一,将服务提供者的信息记录存储在Nacos服务注册表中,让Nacos注册中心对这些服务进行维护。在调用服务时,服务消费者必须首先从Nacos服务注册中心获取当前可以使用的服务的列表,然后调用相应服务实例。对于这个微服务高并发的系统,我们需要使用将每个服务注册到Nacos服务注册中心,交给注册中心去维护服务的信息。而同时,我们可以动态检测服务实例的状态,看服务是否可用。有没有失去联系等,这可用通过心跳机制进行实现。当服务不可用时,注册中心会自动删除此服务的实例以确保服务的可用性。