开发者学堂课程【RocketMQ 知识精讲与项目实战(第二阶段):综合案例功能介绍】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/703/detail/12393
综合案例功能介绍
内容介绍:
一、下单功能
二、支付功能
一、下单功能
本节正式分析综合案例中的两大功能,第一个是下单功能,下单功能具体怎么操作呢?
对于一个电商网站来讲,它提供给用户最核心的服务是提供用户的在线购买商品的服务,用户需要在线购买商品,需要先在数据库中生成他的订单数据,那么如何生成该订单呢?
首先先去发起订单请求到订单系统,订单系统接收到订单请求后调用订单服务去完成下单操作,下单功能两个系统之间的调用通过 rpc 方式调用,订单服务不能直接下单,因为订单服务需要调用商品服务去完成扣减库存的操作,需要完成调用优惠券服务完成扣减优惠券操作即用户在下单时若使用优惠券,需要扣减用户优惠券,以及用户账户中有余额需要去完成余额的扣减。当完成这些操作后最后才可以下单。以上是下单功能基本流程。
二、支付功能
第二个功能是支付功能。当用户下单成功后去请求支付系统进行支付操作,那么请求到支付系统后支付操作通过微信或是支付宝等第三方平台让用户支付,所以在支付系统上会将用户请求给重定向到第三方支付平台,让用户在第三方支付平台发起支付操作。
当用户在第三方支付平台操作完成后第三方支付平台会通过发送消息等方式提示用户支付结果。
思考问题:我们的系统是否需要知道用户的支付结果?结果需要,那么如何知道用户的支付结果?
一般通过第三方支付平台回调接口告诉,所以此处存在第三方支付平台请求回调接口告诉当前用户支付结果,那么在支付系统中我们获取用户支付结果,例如用户现在支付成功,我们需要做支付日志记录,修改订单状态,进行用户积分处理,所以在综合案例中我们主要完成后部分:用户支付完成后在系统中接收到第三方支付平台回调请求后如何进行支付日志、订单服务、用户服务这些相关处理。
以上是第二个功能。
我们将系统中的两大功能进行简单说明。两大功能在进行开发时都存在问题,稍后进行详细说明,分析问题如何使用RocketMQ 进行处理。