4-1 你们项目是如何使用XXL-JOB的
XXL-JOB 是一个开源的分布式任务调度平台,主要用于解决企业级定时任务调度和管理的需求,以下是我们的项目中XXL-JOB的使用流程:
- 首先,需要将 XXL-JOB 的调度中心部署到服务器上
- 在 XXL-JOB 的调度中心上创建任务,并设置触发规则、执行器等相关配置
- 在任务执行的节点上注册执行器
- 根据任务的触发规则,调度中心会定时触发任务执行,根据注册的执行器进行任务的分发
- 执行器接收到任务后,根据任务的定义进行具体的任务执行,执行过程中可以记录任务的执行日志和状态,并上报给调度中心
- 最后,调度中心可以对任务执行日志进行管理和查询,监控任务执行情况,包括任务的执行状态、执行结果等
总体来说,XXL-JOB 提供了一个方便、可靠的任务调度平台,帮助企业统一管理和调度定时任务,提高任务执行效率和稳定性
4-2 说一说你的评论点赞功能是如何完成(reids版本)
我们的项目中评论点赞功能用到了点赞微服务和学习微服务,接下来给您详细介绍一下:
- 首先用户点击点赞按钮后,会向点赞微服务发送点赞信息,其中包括,点赞业务id,点赞业务类型与是否点赞
- 点赞微服务接收到后回去点赞记录中去查询记录是否存在,如果存在说明已经点过赞,就直接结束,如果不存在就会新增点赞记录并向redis中缓存点赞记录,然后会统计点赞数量,并将点赞数量缓存至redis
- MQ会定期读取缓存中的点赞数量,然后通知学习微服务,最后由学习微服务更新评论的点赞数量信息
4-3 项目过程有没有难题(业绩)
在我们的项目中,将点赞功能数据存储到MySQL中,点赞业务需要多次对数据库进行读写操作,存在严重的高并发的问题,
我们的项目改用Redis进行点赞记录和数量的保存,然后使用XXL_JOB定时任务和MQ监听机制定期将点赞数量跟新到数据库中即可,大大减少了数据库的压力