4-1 你们项目是如何是XXL-JOB的
XXL-JOB共分为两个端,分别是控制中心和代码
控制中心是作为一个微服务单独部署的,控制中心用来配置代码的执行策略,
1.首先将控制中心部署出来
2.编写代码,并在代码上面添加@Xxljob的注解,并给任务进行命名
3.在代码端的配置文件中配置调度中心的配置项
4.在控制中心配置执行器连接对应的微服务
5.在执行器下面配置相关的任务,例如时间策略
6.最后启动任务,在调度日志里可以看到执行结果
4-2 说一说你的评论点赞功能是如何完成(reids版本)
在项目中,评论点赞数据存储在Redis,实现步骤如下:
前端提交点赞信息后,查询Redis中是否存在点赞记录。如果存在,则直接返回;如果不存在,则将记录存入Redis。
统计点赞数,并将其存入Redis。这个过程可以通过Redis的incr命令实现。
使用XXL-Job进行定时读取Redis中的点赞数量,并将其投递到RabbitMQ中。
设置监听器监听RabbitMQ,将点赞数量同步到数据库中。
通过以上步骤,我们实现了评论点赞数据的Redis存储和定时同步到数据库的功能。
4-3 项目过程有没有难题(业绩)
由于我们项目的评论点赞数据存储在MySQL中,点赞存在高并发的情况,这可能导致数据库压力过大,
我们考虑将点赞记录和点赞统计信息保存在Redis缓存中。将同步写改为异步写,并合并写请求。这意
味着,当多个用户同时发送点赞请求时,这些请求会被合并成一个写请求,然后异步地写入MySQL数据库。
设置定期任务,定期将Redis中的点赞数量统计通过MQ更新到MySQL数据库中。
通过以上步骤,我们成功地利用Redis缓存来优化了评论点赞数据的存储和查询