第二题业务题

2-1 说一下生成课表的业务流程
首先,当用户点击购买课程或者学习免费课程的时候,发送请求到Nginx反向代理到我们的虚拟机网关微服务,网关微服务将用户信息保存到请求头中,然后请求根据网关路由到交易微服务,完成支付后,异步通知课表微服务,课表微服务监听器监听到消息,将课程加入该用户的课表,这就是为用户生成课表的业务流程

2-2 说一下查询课表的业务流程
查询课表的整个业务流程是分页展示当前登录用户的课表.
当前端的请求到后端后,首先,根据前端传来的分页参数对课表表进行分页查询,前端需要后端返回课程相关信息,我们可以通过使用feign远程调用课程微服务,将远程调用的结果油list转换成map,最后将结果进行组装返回.

2-3 说一下查询最近学习章节的业务流程
查询最近学习就是展示用户最近学习的一个课程情况,
首先,需要了解前端发送的请求参数和需要的返回值,没有参数,但是返回的结果中新增了三条数据是和课程章节相关的字段,具体步骤,首先根据用户Id和最近时间从数据库中查询出一条最近的课表学习记录,然后根据课程Id调用课程微服务查询对应的课程信息,然后根据课表里的最近章节Id从课程微服务查询章节信息,然后根据需要的返回结果,将结果进行封装返回即可。


tip:在我们调用远程微服务的时候要注意,不能将调用代码写在循环里面,因为这样写会频繁发送请求到远程微服务,当该请求数量很大的时候很可能造成服务雪崩问题

你可能感兴趣的:(业务题,java)