EchoSpace 社交平台后端服务(含 IM 即时通讯)产品系统

我要开发同款
润川大魔王2026年09月19日
2阅读

技术信息

语言技术
JavaJavaScriptVueMySQL
系统类型
Web
行业分类
社交
参考价格
500
演示地址
https://121.41.102.201/chat/login

作品详情

行业场景

陌生人及熟人社交、兴趣社区场景。核心为图文动态分享、关注与好友关系链沉淀、私聊群聊即时通讯、AI 智能陪聊;并叠加积分等级会员体系与钱包充值消费能力,适用于综合社交平台、兴趣社区、IM 即时通讯、AI 陪聊助手等方向的互联网产品落地。

功能介绍

EchoSpace 社交平台服务端,含十一大模块。

1. 账号体系:注册、登录、图形验证码、BCrypt 密码加密、JWT 签发,账号启用/禁用,资料编辑与主页查询。
2. 关系链:关注/取关、粉丝、关注、互关列表;好友申请与通过、好友列表,行为自动写入通知。
3. 动态社区:图文发布、删除(级联清理点赞评论)、好友动态流、个人动态分页,点赞/取消点赞、评论及计数回显。
4. 即时通讯:Netty WebSocket 单聊实时转发、群聊广播、消息落库、离线未读、未读数与一键已读、消息撤回、心跳保活。
5. AI 助手:对接 DeepSeek 大模型,独立机器人账号参与私聊,会话复用、最近 10 条上下文多轮对话、异步回复、故障降级。
6. 积分等级:登录+5、发动态+10、评论+3、被赞+2,自动晋升等级,返回等级名称、图标与升级进度。
7. 钱包:充值、消费、退款、冻结金额、流水分页,乐观锁防超扣,余额快照可对账。
8. 充值订单:下单、支付回调加款、订单查询,状态机 PENDING/SUCCESS/FAILED 且回调幂等。
9. 通知与搜索:通知列表、未读数、标记已读;用户/动态/群组关键词搜索。
10. 后台管理:管理员角色鉴权,用户检索与封禁、订单检索、平台数据统计。
11. 文件上传:图片本地存储,UUID 重命名防覆盖,返回可访问 URL。

规模:115+ Java 文件、12 Controller、15 Service、19 数据表与 Mapper、60+ REST 接口、6 类 WebSocket 消息协议。

项目实现

一、架构:双服务形态——Spring Boot 内置 Tomcat 提供 HTTP REST(8081);Netty 独立端口 9001、路由 /ws 承载 WebSocket 长连接,随应用异步启动。
二、分层:controller(统一 Result/PageResult)→ service/impl → mapper(MyBatis-Plus 注解式 CRUD)→ entity,dto/vo 隔离出入参。
三、要点
1. Netty 管道:HTTP 编解码 → ChunkedWriteHandler → HttpObjectAggregator → WebSocketServerProtocolHandler("/ws") → 自定义 Handler(@Component 入 Spring 容器)。
2. 会话管理:ConcurrentHashMap 维护 userId→Channel,上线绑定、断线解绑,支撑点对点与群聊推送。
3. 消息协议:统一 MessageDto,type 区分上线、单聊、群聊、撤回、心跳、AI 对话。
4. 安全:AdminInterceptor 校验 JWT 角色,非 ADMIN 返回 403;CORS 放行预检。
5. 资金:钱包变更用 version 乐观锁防并发超扣,记录流水与余额快照。
6. 性能与异步:批量预取规避 N+1,列表物理分页;AI 走 CompletableFuture 异步推送。
7. 数据模型:19 张表,覆盖用户、好友关注、动态与点赞评论、私聊群聊消息、AI 会话、积分等级、钱包与充值;Long 型 ID 序列化为字符串,防 JS 精度丢失。
四、构建:application.properties 集中管理双端口、数据源、JWT、上传与 AI 参数;Maven 打包可执行 Jar。

示例图片

声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论