核心功能模块
1. 用户认证模块
主要功能 :
- 用户注册:支持手机号、邮箱、密码注册
- 用户登录:支持用户名/手机号/邮箱登录
- 获取个人信息:基于 JWT 令牌获取当前用户信息
实现特点 :
- 使用 JWT 进行无状态身份认证
- 支持管理员和普通用户两种角色
- 密码加密存储
- 令牌有效期为 3 小时
2. 社区模块
主要功能 :
- 社区管理:创建、查询、更新、删除社区
- 社区成员管理:加入、退出社区
- 社区信息查询:获取社区详情、成员列表
3. 话题模块
主要功能 :
- 话题管理:创建、查询、更新、删除话题
- 话题分类:支持不同类型的话题
- 话题搜索:基于 Elasticsearch 实现全文搜索
4. 消息模块
主要功能 :
- 消息发送:支持文本、图片等多种消息类型
- 消息接收:实时接收消息
- 消息存储:持久化存储消息
- 消息搜索:基于 Elasticsearch 实现消息搜索
- 消息队列:使用 RabbitMQ 实现异步消息处理
5. 文件上传模块
主要功能 :
- 文件上传:支持图片、视频等文件上传
- 文件存储:使用阿里云 OSS 存储文件
- 文件访问:生成文件访问 URL
6. 搜索模块
主要功能 :
- 社区搜索:基于 Elasticsearch 搜索社区
- 话题搜索:基于 Elasticsearch 搜索话题
- 消息搜索:基于 Elasticsearch 搜索消息
本项目是一个功能完整、技术先进的匿名聊天平台后端实现,具有以下特点:
1. 技术栈现代化 :集成了 Redis、RabbitMQ、Elasticsearch 和阿里云 OSS 等现代技术
2. 架构设计合理 :采用分层架构,职责清晰,易于维护和扩展
3. 功能丰富 :支持用户认证、社区管理、话题管理、消息处理、文件上传和搜索等核心功能
4. 安全性高 :使用 JWT 认证、密码加密、输入验证等安全措施
5. 性能优化 :通过缓存、异步处理、数据库优化等措施提高系统性能
6. 可靠性强 :文件存储在阿里云 OSS,数据持久化到 MySQL,消息通过 RabbitMQ 处理