|
|
f90e36f7d6
|
feat(comment): 实现评论点赞与取消点赞功能,评论点赞、取消点赞批量写库
- 新增评论点赞布隆过滤器,提升点赞判断性能
- 实现评论点赞与取消点赞的批量操作消费者
- 添加评论点赞状态查询接口及异常处理
- 优化点赞操作合并逻辑,减少数据库访问频率
- 增加评论点赞相关 Lua 脚本支持过期时间设置
- 完善评论点赞 Mapper 层批量插入与删除方法
- 添加评论已点赞业务异常状态码
- 新增测试类用于验证评论点赞 MQ 消费逻辑
- 调整 MQ 消费者 Bean 名称避免冲突
- 更新 HTTP 测试文件中的评论 ID便于调试
|
2025-11-08 22:55:09 +08:00 |
|
|
|
a8d5c7f9b7
|
feat(comment): 实现评论点赞功能
- 新增评论点赞接口,支持用户对评论进行点赞操作
- 集成 Redis 布隆过滤器,用于快速校验评论是否已被点赞
- 编写 Lua 脚本实现布隆过滤器的检查与添加逻辑
- 定义点赞相关枚举类,包括点赞状态和操作类型- 新增点赞请求 VO 和 MQ 消息 DTO,规范数据传输结构
- 通过 RocketMQ 异步处理点赞记录落库,提升接口响应速度
- 添加 HTTP 客户端测试用例,便于接口调试和验证
- 补充 Redis Key 构建方法及常量定义,统一缓存键管理
|
2025-11-08 22:16:15 +08:00 |
|
|
|
8be6719be8
|
feat(comment): 实现子评论分页查询与缓存优化
- 新增根据父评论 ID 和限制数量查询子评论的数据库方法
- 实现子评论分页缓存机制,使用 ZSET + String 结构提升查询性能
- 添加子评论详情批量同步到 Redis 的功能
-优化子评论计数数据的缓存读取与数据库同步逻辑
- 新增父评论不存在时的业务异常处理
- 完善子评论缓存失效后的数据库查询与数据回填机制
- 提取公共方法用于批量操作 Redis 数据,提升代码复用性
|
2025-11-08 21:58:29 +08:00 |
|
|
|
e3f9b6a5b5
|
feat(comment): 一级评论:子评论总数更新与查询
- 新增批量查询评论计数的数据库接口及SQL实现
- 优化本地缓存中评论ID失效判断逻辑,修正变量命名
- 增加从Redis中获取评论计数数据的功能,并支持缺失时回源数据库
- 实现评论计数数据异步同步至Redis的逻辑,包括子评论总数和点赞数
- 在消费端增加更新Redis中评论子评论总数的逻辑
- 添加评论计数相关的Redis Key和Field常量定义
- 更新HTTP测试用例中的评论内容和回复ID,验证计数同步功能
|
2025-11-08 21:01:15 +08:00 |
|
|
|
6f22c2b50d
|
feat(comment): 实现二级评论分页查询功能
- 新增子评论分页查询接口 /comment/child/list- 添加查询一级评论下子评论总数的 Mapper 方法
- 实现二级评论分页数据查询的 Mapper 方法
- 补充对应的 XML 查询语句,支持按 parent_id 查询子评论
- 创建 FindChildCommentItemRspVO 和 FindChildCommentPageListReqVO VO 类
- 在 CommentServiceImpl 中实现子评论分页查询业务逻辑
- 支持批量查询子评论内容及用户信息并组装返回数据
- 添加 HTTP 客户端测试用例用于验证接口功能
|
2025-11-08 20:29:24 +08:00 |
|
|
|
bd775b805c
|
feat(comment): 实现评论热度同步到 Redis ZSet
- 新增 Lua 脚本支持热点评论添加与更新
- 在评论消费端同步一级评论至 Redis 热点评论 ZSet
- 支持批量更新评论热度并维护 Redis 中的 Top 500 热点评论
- 修改 CommentDO 和 CommentHeatBO 模型,增加 noteId 字段以支持按笔记分组
- 调整 Mapper XML 查询字段,补充 note_id 字段用于构建 Redis Key
- 优化 Redis 脚本执行逻辑,确保线程安全及数据一致性
- 更新 HTTP 测试用例内容,验证 Redis 同步功能正确性
|
2025-11-08 15:48:18 +08:00 |
|
|
|
85e6bab079
|
feat(comment): 引入本地缓存优化评论查询性能
- 添加 Caffeine 依赖以支持本地缓存
- 实现评论详情的本地缓存机制,减少 Redis 查询压力
-优化分页查询逻辑,优先从本地缓存获取评论数据
- 异步同步评论详情至本地缓存,提升响应速度
- 简化 Redis 操作代码,提高可读性和维护性
|
2025-11-08 15:34:27 +08:00 |
|
|
|
6fbe8eed25
|
feat(comment): 实现评论热度排序及缓存优化
- 修改 CommentDO 中 heat 字段类型从 BigDecimal为 Double
- 新增 selectHeatComments 方法用于查询热门评论- 优化评论分页查询逻辑,引入 Redis 缓存提升性能
- 新增评论总数与热门评论的 Redis 缓存同步机制
- 实现评论详情的 Redis 批量缓存与过期策略
- 添加 COMMENT_NOT_FOUND 业务异常码
- 更新 RedisKeyConstants 增加相关键构建方法
- 调整 XML 映射文件以支持新的查询与字段类型- 引入 RedisTemplate 和线程池异步处理缓存操作
- 在 FindCommentItemRspVO 中新增 heat 字段返回热度值
|
2025-11-08 11:43:32 +08:00 |
|
|
|
fdee4dc2b4
|
feat(comment): 实现评论分页查询功能
- 新增评论分页查询接口与实现逻辑
- 支持查询一级评论及其最早回复的二级评论
- 支持从KV服务批量获取评论内容
- 支持从用户服务批量获取用户信息并组装- 新增评论热度字段用于排序
- 修改MyBatis代码生成配置至comment模块
- 调整评论表结构,优化字段定义
- 完善相关DTO、VO及Mapper文件
- 添加HTTP客户端测试用例
|
2025-11-08 11:07:50 +08:00 |
|
|
|
29cf889dd7
|
feat(comment): 新增一级评论首条回复ID字段及更新机制
- 在 CommentDO 中新增 firstReplyCommentId 字段,用于记录一级评论下最早回复的评论 ID
- 在 CommentDOMapper 中新增 selectEarliestByParentId 和 updateFirstReplyCommentIdByPrimaryKey 方法,用于查询和更新一级评论的首条回复 ID
- 在 t_comment 表中新增 first_reply_comment_id 字段- 新增 OneLevelCommentFirstReplyCommentIdUpdateConsumer 消费者,用于异步更新一级评论的首条回复 ID- 新增 RedisKeyConstants 常量类,用于构建 Redis Key
- 新增 RedisTemplateConfig 配置类,用于配置 RedisTemplate
- 在 pom.xml 中新增 spring-boot-starter-data-redis 依赖
|
2025-11-07 21:49:47 +08:00 |
|
|
|
c454e1832c
|
feat(comment): 新增评论热度计算与更新功能
- 在评论数据对象中新增 childCommentTotal 和 heat 字段
- 扩展 CommentDOMapper 支持批量更新评论热度值
- 新增 CommentHeatBO 类用于封装评论热度信息
- 实现基于点赞数和回复数的热度值计算工具类 HeatCalculator
- 添加 RocketMQ 消费者异步处理评论热度更新消息
- 引入 buffer-trigger依赖实现消息聚合发送
- 扩展 JsonUtils 工具类支持 Set 类型反序列化
- 新增 MQ 常量 TOPIC_COMMENT_HEAT_UPDATE用于热度更新主题
- 修改 SQL 脚本增加 heat 字段并设置默认值- 更新测试接口请求参数内容以适配新逻辑
|
2025-11-07 21:19:42 +08:00 |
|
|
|
9ec330216f
|
feat(count): 实现评论计数功能支持二级评论统计
- 新增评论数据对象 CommentDO 及其 MyBatis 映射配置
- 新增评论级别枚举 CommentLevelEnum 区分一级与二级评论
- 新增 CountNoteChildCommentConsumer 消费 MQ 消息并更新子评论总数
- 修改 CountPublishCommentMqDTO 增加 level 和 parentId 字段以支持层级识别
- 调整 Comment2DBConsumer 中构造 CountPublishCommentMqDTO 的逻辑,使用 commentBO 提取完整信息
- 配置 MyBatis Code Helper 插件指向新的 han-note-count 模块路径
- 更新 gateApi.http 测试接口示例,添加 replyCommentId 参数用于模拟二级评论发布
|
2025-11-07 17:42:43 +08:00 |
|
|
|
63495b4938
|
feat(count): 实现评论发布后异步更新笔记评论数功能
- 新增 CountPublishCommentMqDTO 用于传输评论计数消息
- 在评论服务中添加异步发送评论计数消息逻辑
- 新建 CountNoteCommentConsumer 消费评论计数消息并批量更新笔记评论数
- 扩展 t_comment 表结构,新增 child_comment_total 字段
- 更新 MQ 常量配置,添加评论计数相关 Topic 定义
- 调整 LIKE/UNLIKE 和 COLLECT/UNCOLLECT 消费者中的注解使用(防止循环依赖)
- 修改 gateApi.http 中的测试用例内容以适配新功能
|
2025-11-07 17:13:01 +08:00 |
|
|
|
a37e76c87c
|
feat(comment): 实现评论异步消费与内容存储
- 新增评论内容批量存储接口与实现
- 实现MQ消息消费端处理评论发布逻辑
- 支持一级与二级评论的层级关系构建
- 添加评论内容与元数据分离存储机制
- 集成分布式ID生成服务用于评论ID生成
- 完善评论相关DTO、DO、BO模型类
- 添加Cassandra数据库操作支持
- 实现Feign接口调用与事务控制
|
2025-11-05 19:19:19 +08:00 |
|
|
|
c37b16ff42
|
feat(mq): 实现评论发布消息消费功能
- 新增 Comment2DBConsumer 消费者类,用于处理评论发布消息- 配置 RocketMQ 消费者,订阅 PublishCommentTopic 主题
- 实现消息监听逻辑,支持批量消费和手动确认机制
- 添加令牌桶限流控制,限制每秒处理消息数量
- 集成 Spring Boot 生命周期管理,确保消费者优雅关闭
- 新增 MQ 测试类 MQTests,验证消息发送与消费流程
- 引入 rocketmq-client 依赖以支持 RocketMQ 功能
|
2025-11-04 21:53:28 +08:00 |
|
|
|
eb19d52fcb
|
feat(comment): 引入MQ消息重试机制
- 添加Spring Retry依赖及AOP支持
- 配置重试策略与指数退避机制
- 创建SendMqRetryHelper封装MQ发送与重试逻辑
- 替换原有RocketMQTemplate为带重试功能的实现
- 增加线程池配置以支持异步重试任务执行
- 更新测试用例中的评论内容用于验证重试机制
|
2025-11-04 21:38:28 +08:00 |
|
|
|
226c28885b
|
feat(comment): 新增评论功能模块
- 新增评论发布接口,支持内容和图片评论
- 新增评论和评论点赞数据表结构及对应DO、Mapper
- 新增评论相关DTO、VO及校验规则
- 新增评论服务接口及实现,集成RocketMQ异步发送
- 新增全局异常处理器,统一处理参数校验和业务异常
- 配置网关路由,支持/comment/**路径转发至评论服务
- 新增RocketMQ配置类,启用MQ自动配置
- 添加评论发布HTTP测试用例
|
2025-11-04 19:45:11 +08:00 |
|
|
|
5eb3c7b58e
|
feat(comment): 初始化评论服务模块
- 新增评论服务基础结构,包括 api 和 biz 模块
- 配置应用启动端口、Nacos 服务发现与配置中心
- 添加 MyBatis-Plus、MySQL、Druid 等依赖
- 创建评论表和评论点赞表 SQL 脚本
- 配置日志输出格式及异步写入策略
- 更新 IDEA 编码设置和数据源映射
- 在父级 pom 中注册评论服务模块
|
2025-11-04 19:18:21 +08:00 |
|