分库分表实战之订单业务完整梳理

前 言

上一期容我们整体了解了分库分表实战项目当前使用的系统架构,也就是单库版本订单系统的系统架构。同时,我们也知道了未来要做的分库分表版本的订单系统架构。现在,我们就从单库版本的订单系统开始,一步一步的来进行优化。

如果想要优化单库版本的订单系统,首先要了解目前的订单系统有哪些核心功能,核心功能的业务流程是什么。

如果你刚入职了这家初创型互联网公司,而你所在的部门又刚好是做外卖APP的订单系统的,那你认为入职之后要干的第一件事是什么呢?

必须是了解整个订单系统,你的leader可能会直接给你发个wiki,这个wiki中包含了单库版本的系统架构图,如下图:

通过这张系统架构图,可以知道整个订单系统目前有哪些核心功能,都使用了哪些技术栈。

并且,在这个wiki中除了有系统架构图之外,还有很多核心接口的业务流程图,通过这些业务流程图,可以快速了解到订单系统核心接口的业务流程。

那订单系统中,有哪些核心接口的业务流程图?现在,我们一起来看一下。

用户下单流程

大家或多或少都是点过外卖的,订单系统涉及用户和商家两个角色的功能,先来看一下C端,即用户端的一些业务流程,首先就是用户下单的操作。

用户可以在外卖APP中点外卖,当用户选中一个商品之后,会提交订单,接着就会发起一个创建订单的请求,如下图:

可以看到,创建订单的请求首先会转发给Controller组件,Controller组件再把请求交给Service组件处理,在Service组件中会先生成一个订单号,然后为新的订单组装好订单信息以及订单明细信息。

随后,Service组件再将组装好的订单信息转交给Repository组件处理,Repository组件通过Mapper组件,最终将订单的信息保存到数据库中。

当然,用户正式下单之后,是需要支付订单的,但是支付相关的功能,这里可以暂时不用关注。

用户查询订单列表流程

当用户完成下单之后,用户可能要看一下自己曾经下过哪些订单,所以,订单系统还支持订单列表查询,如下图:

可以看到,用户可以向外卖订单系统,发起一个查询订单列表的请求,请求同样先转发到Controller组件上,因为是查询订单列表的信息,所以我们只需要传递查询的参数即可。

然后,Controller组件会把请求参数,通过Service组件传到Repository组件上,然后Repository组件可以调用Mapper组件的接口,再到数据库中查询用户的所有订单信息,查询结果最后会形成一个订单列表,最后一步步返回给用户。

最终,用户就可以从订单列表中,看到自己下过的所有订单信息了。

用户查看订单详情流程

如果用户还想要看下某个订单里面的详细信息,此时业务流程图如下所示:

可以看到,查询订单明细请求会先转发到Controller组件上,然后Controller组件把请求交给Service组件处理。

随后,Service组件携带着订单号,将查询订单明细的请求交给Repository组件来查询,Repository组件根据订单号调用Mapper组件的接口,接口会到数据库中查询订单及订单明细的信息,最后将查询出来的订单明细信息返回给用户。

用户取消订单流程

另外,用户下单之后也是支持取消订单的,当用户要取消一个订单时,也会发送一个取消订单的请求,如下图:

如所有请求一样,取消订单的请求首先发送给Controller组件,Controller组件会将请求交给Service组件处理,Service组件会把需要取消订单的订单号发送给Repository组件,Repository组件拿着订单号调用Mapper组件中的接口,更新订单将订单取消掉。

现在,外卖订单系统中,C端也就是用户端的一些操作我们已经了解了,而B端也就是商家的功能,和用户端的功能是比较类似的。

商家也会查看订单列表以及订单的明细信息,而且,当用户下单之后,商家可以选择接单或者拒接,一旦商家选择接单,那么订单状态就会变为“已接单”,这些功能在我们的外卖订单系统中都是支持的。

结束语

最后,在这个wiki中不仅有一堆的流程图,还有订单系统代码仓库的Git地址,然后你将代码拉到本地,接着,你一边看着这些wiki中的业务流程图,一边慢慢开始熟悉起来了代码……

文章来源网络,作者:管理,如若转载,请注明出处:https://shuyeidc.com/wp/228447.html<

(0)
管理的头像管理
上一篇2025-04-18 07:37
下一篇 2025-04-18 07:38

相关推荐

  • 站群服务器和普通服务器到底哪个更适合GEO,怎么选?

    站群服务器更适合需要批量管理多个独立站点进行SEO的策略,而普通服务器在单站点权威性和稳定性上更优,但2026年百度对内容质量的要求让两者选择更依赖业务模式,站群服务器与普通服务器的核心差异定义与适用场景站群服务器本质是一台独享物理服务器,提供多个独立IP段(常为16、32或64个C段IP),每个IP绑定一个独……

    2026-07-28
    0
  • 物理服务器和云服务器做站群到底选哪个,哪个更稳定?

    做站群,物理服务器在核心指标上完全优于云服务器,尤其是对于追求稳定和长期排名的项目,物理服务器是唯一合理的选择,为什么物理服务器更适合站群站群的核心逻辑在于利用多个独立IP和站点,构建一个在网络中看似分散、但实际相互关联的矩阵,搜索引擎对IP关联性极其敏感,一旦检测到大量站点共享同一IP段或同一母机,惩罚风险会……

    2026-07-28
    0
  • 国内高防服务器哪家防御真实靠谱,怎么选?

    国内高防服务器哪家防御真实靠谱?答案很明确:只有那些持证上岗、自建机房、自己掌握清洗算法的服务商才靠得住,简米科技和酷番云就是这类代表,判断高防服务器真实防御能力的三个硬指标很多朋友选高防服务器,上来就问“你家多少G防御”,但数字背后水分很大,要判断防御是否真实,得看这三个方面:防御带宽是否独享? 有些服务商宣……

    2026-07-28
    0
  • 裸金属服务器和物理服务器有什么区别?,怎么选?

    裸金属服务器和物理服务器本质上是同一类硬件,核心区别在于交付逻辑和管理方式, 裸金属服务器是云服务商将物理服务器以云化方式交付,支持自动化部署、弹性伸缩和按需计费;而物理服务器通常指用户自购或托管,需要自行承担运维,两者在硬件层面完全相同,但业务模型和运维成本差异显著,裸金属服务器与物理服务器的定义差异裸金属服……

    2026-07-28
    0
  • 做GEO站群选哪家服务器服务商靠谱,怎么选?

    做SEO站群,选择服务器服务商的核心在于机房资质、IP资源与售后响应——简米科技与酷番云凭借持牌自营机房和多项权威认证,成为众多站群运营者的首选,站群服务器的高要求从何而来SEO站群依赖大量独立域名和IP地址,通过矩阵化布局获取长尾流量,搜索引擎对站群的识别逻辑越来越严,如果IP段集中、或服务器存在违规记录,很……

    2026-07-28
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注