|
|
61cfbd6b81
|
feat(note): 实现笔记收藏与取消收藏功能
- 新增收藏/取消收藏 MQ 消费者 CollectUnCollectNoteConsumer
- 新增 MQ 消息 DTO 类 CollectUnCollectNoteMqDTO
- 新增收藏操作类型枚举 CollectUnCollectNoteTypeEnum
- 在 MQConstants 中新增收藏相关主题与标签常量
- 扩展 NoteCollectionDOMapper 支持插入或更新收藏记录
- 在 NoteCollectionDOMapper.xml 中实现 insertOrUpdate SQL 逻辑
- 在 NoteServiceImpl 中构建并发送收藏 MQ 消息
- 添加流量削峰限流与幂等性处理机制
|
2025-10-18 21:31:09 +08:00 |
|
|
|
1ac61d1b06
|
feat(note): 实现笔记收藏ZSET更新逻辑
- 移除TODO注释,完善收藏判断逻辑
- 新增Lua脚本实现ZSET收藏列表更新
- 添加ZSET列表不存在时的初始化逻辑
- 实现收藏列表超限移除最早收藏项
- 支持批量同步历史收藏数据到Redis
- 设置随机过期时间避免缓存雪崩
|
2025-10-18 21:19:12 +08:00 |
|
|
|
65b089de70
|
feat(note): 实现笔记收藏功能
- 新增笔记收藏接口及对应业务逻辑
- 添加布隆过滤器和ZSet校验笔记是否已收藏
- 实现异步初始化用户收藏笔记数据到Redis
- 新增多个Lua脚本支持批量操作和过期时间设置
- 更新NoteCollectionDO实体类字段类型和时间格式
- 添加收藏相关枚举类和请求VO类
- 扩展RedisKeyConstants常量类支持收藏功能键名构建
- 在网关API测试文件中增加笔记收藏入口配置
|
2025-10-18 21:11:10 +08:00 |
|
|
|
54c34706fb
|
feat(count): 实现笔记点赞计数功能
- 新增笔记点赞计数 MQ DTO 类
- 实现笔记点赞计数消费者,支持流量削峰与批量聚合
- 实现笔记点赞计数落库消费者,带限流处理
- 新增笔记点赞类型枚举类
- 添加笔记点赞相关 MQ Topic 常量定义
- 扩展笔记计数 Mapper,支持点赞数更新
- 新增 Redis 笔记计数 Key 构建方法及字段常量
- 在笔记服务中发送点赞计数 MQ 消息
|
2025-10-18 16:16:18 +08:00 |
|
|
|
cfcd12be0d
|
fix(note):修复笔记取消点赞逻辑错误
- 增加布隆过滤器不存在情况的处理逻辑
- 调整笔记未点赞状态的判断条件
-优化异步初始化布隆过滤器的执行流程- 修复状态判断与异常抛出的逻辑错误
|
2025-10-18 15:37:01 +08:00 |
|
|
|
90bd9a5a5d
|
feat(note): 实现笔记取消点赞功能
- 新增 Lua 脚本用于布隆过滤器校验笔记是否被点赞
- 添加取消点赞接口 /note/note/unlike
- 实现取消点赞业务逻辑,包括 Redis ZSet 删除与 MQ 异步更新
- 新增取消点赞请求 VO 类 UnlikeNoteReqVO
- 新增 Lua 脚本执行结果枚举 NoteUnlikeLuaResultEnum
- 添加响应码 NOTE_NOT_LIKED 用于未点赞提示
- 更新 HTTP 客户端测试用例,增加取消点赞入口
- 消费者 LikeUnlikeNoteConsumer 支持处理取消点赞消息
- 补充相关服务层方法 unlikeNote 及其实现
|
2025-10-18 15:28:38 +08:00 |
|
|
|
bb44cd3d23
|
bugFix: (note)
- Bloom 布隆过滤器不存在时,未校验是否点赞其他笔记
|
2025-10-17 22:20:20 +08:00 |
|
|
|
7c92bd91f6
|
feat(note): 实现笔记点赞功能及Redis ZSet同步
- 新增笔记点赞MQ消费者LikeUnlikeNoteConsumer,支持点赞与取消点赞操作
- 添加LikeUnlikeNoteMqDTO数据传输对象和LikeUnlikeNoteTypeEnum枚举类
- 扩展NoteLikeDO实体类使用LocalDateTime并调整status字段类型为Integer
- 实现NoteLikeDOMapper的insertOrUpdate方法支持插入或更新点赞记录- 新增两个Lua脚本用于批量添加点赞记录及检查更新用户点赞ZSet-优化NoteServiceImpl中的点赞逻辑,增强幂等性校验和ZSet初始化机制
- 引入Redis ZSet维护用户最近100条点赞记录,并支持过期时间设置
- 调整MQ常量定义,增加点赞相关主题与标签配置
- 迁移DateUtils工具类至公共模块并修复相关引用路径
- 增加用户笔记点赞列表ZSet的Key构建方法及相关常量定义
|
2025-10-17 22:07:48 +08:00 |
|
|
|
648c621fbf
|
feat(note): 实现笔记点赞功能
- 新增笔记点赞接口,支持用户对笔记进行点赞操作
- 集成 Redis 布隆过滤器,用于高效判断用户是否已点赞
- 添加 Lua 脚本处理点赞逻辑,包括布隆过滤器检查与更新
- 实现异步批量初始化布隆过滤器,提升性能与用户体验
- 完善点赞相关枚举、VO 类及 Redis Key 常量定义
- 在 HTTP 客户端中新增点赞接口测试用例
- 增加笔记存在性校验逻辑,确保操作目标有效
- 添加点赞状态枚举和响应码,优化错误提示信息
|
2025-10-16 22:47:18 +08:00 |
|
|
|
e17ab857b9
|
refactor(note):优化NoteLikeDOServiceImpl的导入顺序- 调整了类导入顺序,将Spring注解与MyBatis相关依赖分开
- 移除了未使用的List导入
-重新组织了包导入顺序以提高可读性
-保持了@Service注解的位置不变- 确保所有必需的依赖仍然正确导入
|
2025-10-15 19:33:21 +08:00 |
|
|
|
ee99654e7c
|
refactor(core):优化服务实现类代码结构
- 调整了多个服务实现类中的 import 语句顺序- 移除了未使用的注解和依赖注入相关导入
- 统一了 MyBatis 注解的导入方式-优化了数据源配置类中的 DataSource 导入位置
- 移除了过滤器中不必要的 Component 注解- 简化了部分重复的代码结构以提升可读性
|
2025-10-15 19:31:02 +08:00 |
|
|
|
3904e8510e
|
feat(count): 新增笔记和用户计数相关数据结构和服务
- 新增笔记收藏表(NoteCollectionDO)及相关Mapper和服务实现
- 新增笔记计数表(NoteCountDO)及相关Mapper和服务实现
- 新增笔记点赞表(NoteLikeDO)及相关Mapper和服务实现
- 新增用户计数表(UserCountDO)及相关Mapper和服务实现
- 配置RedisTemplate以支持JSON格式序列化
- 引入RocketMQ依赖并配置自动装配
- 在count模块中添加Redis和RocketMQ相关配置类
|
2025-10-15 19:26:18 +08:00 |
|
|
|
f0afb23a73
|
feat(note): 新增笔记删除功能
- 新增 DeleteNoteReqVO 请求参数类,用于接收笔记删除请求
- 在 NoteController 中添加 /delete 接口,实现笔记删除功能
- 在 NoteService 和 NoteServiceImpl 中实现 deleteNote 方法
- 删除笔记时进行权限校验,仅允许笔记创建者删除
- 删除操作为逻辑删除,更新笔记状态为已删除
- 删除笔记后清除 Redis 缓存,并通过 MQ 广播通知各实例清除本地缓存
-优化更新和可见性接口的权限校验逻辑,避免重复代码
- 添加 MQ 测试类 MQTests,用于批量发送关注/取关消息
- 引入 Guava 的 RateLimiter 实现 MQ 消费端限流- 配置 Nacos 配置中心依赖及动态刷新配置
- 更新 .gitignore 文件,忽略日志文件目录
- 在 application.yml 中添加 MQ 消费者限流配置项
- 在 bootstrap.yml 中完善 Nacos 配置中心相关配置
- 为 FollowUnfollowConsumer 添加限流逻辑,防止消费端压力过大
|
2025-10-13 21:18:12 +08:00 |
|
|
|
362c32cbd6
|
feat(user-relation): 实现用户关注与取消关注功能
- 在 t_following 和 t_fans 表中添加联合唯一索引,确保关注关系的幂等性- 新增 RocketMQ 消费者 FollowUnfollowConsumer,处理关注和取消关注消息
- 实现关注逻辑,通过事务保证关注表和粉丝表数据一致性
- 修改 DeleteNoteLocalCacheConsumer 的 consumerGroup 名称,避免消费者组冲突,否则可能遇到消费者不消费的情况
|
2025-10-12 21:17:39 +08:00 |
|
Hanserwei
|
cede5282e8
|
feat(note): 新增笔记可见性与置顶功能
- 添加笔记仅对自己可见接口及实现逻辑
- 添加笔记置顶/取消置顶接口及实现逻辑
- 引入新的请求参数类 UpdateNoteVisibleOnlyMeReqVO 和 TopNoteReqVO
- 扩展响应码枚举以支持新功能的异常处理
- 使用通配符导入优化代码结构
- 更新服务层接口定义,增加对应方法声明
|
2025-10-10 18:57:24 +08:00 |
|
Hanserwei
|
5b19e715ce
|
feat(note): 引入 RocketMQ 实现缓存一致性
- 新增 RocketMQ 配置类,引入自动配置
- 添加 RocketMQ 依赖到 pom.xml 文件
- 定义 MQ 常量接口,包括删除本地缓存和延迟删除 Redis 缓存的主题
- 实现延迟删除 Redis 缓存的消息消费者
- 实现删除本地缓存的广播模式消息消费者
- 在笔记更新服务中集成 RocketMQ,实现延迟双删策略
- 发送异步延时消息用于最终删除 Redis 缓存
- 发送同步广播消息以清除所有实例中的本地缓存
|
2025-10-09 17:24:51 +08:00 |
|
Hanserwei
|
d00933caad
|
fix(note):优化笔记内容更新逻辑
- 修改查询笔记内容 UUID 的注释表述
- 当笔记内容为空时,删除对应的 K-V 存储
- 若从无内容更新为有内容,重新生成内容 UUID
- 调用 K-V 服务保存或删除笔记内容
- 更新失败时抛出业务异常以回滚事务
|
2025-10-09 16:21:22 +08:00 |
|
Hanserwei
|
04196f8e3a
|
feat(note): 添加笔记更新功能
- 新增 /update 接口用于修改笔记内容
- 实现笔记类型校验,支持图文和视频笔记
- 校验图片数量不超过8张,视频链接不为空
- 更新笔记元数据并清除Redis和本地缓存
- 支持笔记内容的更新与K-V存储同步
- 新增笔记更新失败和话题不存在的异常码
- 添加 UpdateNoteReqVO 请求参数校验
|
2025-10-09 12:17:56 +08:00 |
|
Hanserwei
|
7508f176e8
|
fix(note): 处理笔记保存失败异常
- 在保存笔记失败时抛出 NOTE_PUBLISH_FAIL 异常
- 修复 ResponseCodeEnum 中重复分号问题
|
2025-10-09 11:38:15 +08:00 |
|
Hanserwei
|
9772a68ee4
|
feat(note):优化笔记详情查询性能
- 引入 CompletableFuture 实现 RPC 调用异步化
- 并行调用用户服务与内容服务提升响应速度
- 使用 allOf 统一处理多个异步任务结果
- 保留原有缓存逻辑及异常处理机制
- 调整代码结构提高可读性和维护性
|
2025-10-09 11:37:21 +08:00 |
|
Hanserwei
|
c75b1f6fe4
|
feat(note): 新增笔记详情查询功能
- 新增笔记详情请求VO类 FindNoteDetailReqVO
- 新增笔记详情响应VO类 FindNoteDetailRspVO
- KV服务Feign接口新增查询笔记内容方法
- KeyValueRpcService新增findNoteContent方法实现
- NoteController新增笔记详情查询接口
- NoteService接口及实现类新增findNoteDetail方法
- 新增RedisKeyConstants常量类用于构建笔记详情缓存KEY
- 新增ResponseCodeEnum枚举值用于笔记相关异常码
- 新增ThreadPoolConfig配置类定义异步线程池
- 新增UserRpcService用于调用用户服务查询用户信息
- 笔记详情接口支持多级缓存(本地缓存Caffeine+Redis)
- 笔记详情查询增加可见性校验逻辑
- pom.xml新增用户服务api依赖和Caffeine依赖
- UserFeignApi新增根据ID查询用户信息接口
|
2025-10-09 11:30:59 +08:00 |
|
Hanserwei
|
869889b87d
|
子模块打包文件
|
2025-10-09 10:36:39 +08:00 |
|
Hanserwei
|
dd63d30792
|
feat(note): 实现笔记发布功能并优化数据模型
- 新增笔记发布接口,支持图文和视频类型
- 引入分布式ID生成器和KV存储服务
- 修改笔记、频道、话题等实体类使用LocalDateTime
- 添加频道-话题关联表及相应服务实现
- 更新数据库表结构,增加笔记内容UUID字段
- 完善笔记发布时的内容校验和异常处理
- 配置网关路由支持新的笔记服务路径
- 优化MyBatis Mapper扫描和Feign客户端配置
|
2025-10-08 19:37:35 +08:00 |
|
Hanserwei
|
665ea930fd
|
feat(note): 初始化笔记服务模块
- 添加笔记、频道、话题等核心数据表结构
- 创建对应的数据访问对象(DO)和MyBatis映射文件
- 配置Spring Boot应用启动类及基础依赖
- 设置Nacos服务发现与配置中心相关配置
- 添加全局异常处理机制和响应码枚举定义
- 配置RedisTemplate以支持JSON序列化存储
- 定义日志输出格式及异步写入策略
- 新增笔记状态、类型、可见性等相关枚举类
- 配置MyBatis-Plus、MySQL、Druid等数据访问组件
- 添加Maven模块结构并集成到主项目中
|
2025-10-07 18:07:30 +08:00 |
|