【视频观看系统】- 技术与架构选型


✅ 项目技术选型方案

🧱 一、整体架构风格

项目层级 技术选型 说明
架构风格 微服务架构(Spring Cloud) 独立部署、易扩展、易维护
服务通信 HTTP(RestTemplate 或 Feign)+ RocketMQ 同步调用 + 异步事件
注册中心 Nacos 服务注册、发现、配置中心
配置中心 Nacos 配置管理 多服务统一配置
API网关 Spring Cloud Gateway 路由转发、权限验证、限流
服务监控 Spring Boot Admin + Actuator 实时查看服务状态

📦 二、后端技术栈

模块 技术 说明
微服务框架 Spring Boot + Spring Cloud Alibaba 轻量、成熟、社区活跃
网关层 Spring Cloud Gateway 支持路由、限流、鉴权
用户鉴权 Spring Security + JWT Token 鉴权,接口保护
消息队列 RocketMQ 弹幕异步处理、事件解耦
异步任务 RocketMQ + @Async 用户行为、通知、日志处理
数据访问 MyBatis-Plus 简洁、高效的数据操作
数据库 MySQL 主体业务数据持久化
缓存 Redis 登录态、弹幕热数据、限流
分布式锁 Redisson 防止重复上传/重复弹幕等问题
对象存储 MinIO(可替代阿里OSS) 视频、封面图等大文件上传
视频转码 FFmpeg(本地调用) mp4/HLS 格式转码
文件上传 Multipart 分片上传 + 秒传机制(可选) 大文件上传优化方案
异常处理 Spring AOP + 全局异常捕获 返回标准 JSON 错误响应
日志系统 Logback + ELK(可选) 可扩展做日志分析
单元测试 JUnit5 + Mockito 各模块测试覆盖

💻 三、前端技术选型

项目部分 技术 说明
技术栈 原生 HTML + CSS + JavaScript 简洁直接,适合后端主导开发
视频播放 Video.js 强大、免费、兼容性好
弹幕支持 WebSocket + Canvas 或 DOM 渲染 实现实时弹幕飘屏
弹幕发送 原生 AJAX / WebSocket 发送接口 与后端集成
页面构建 可使用简单模板或静态 HTML 文件 可结合 Thymeleaf 做 SSR(可选)

🧰 四、开发与部署工具

工具 用途 推荐
Git + GitHub / Gitea 版本控制 必备
Maven 构建管理 Spring Boot 默认
Docker 容器化部署 支持微服务拆分部署
Docker Compose / K8s 服务编排 本地推荐 Compose,上线推荐 K8s
Postman / Swagger 接口测试 使用 Swagger 自动生成文档
RabbitMQ Console / RocketMQ Console 消息调试 查看消息队列状态

📺 五、服务模块拆分建议(按微服务分层)

微服务 描述
user-service 用户注册、登录、认证(JWT)
video-service 视频上传、转码、播放、信息管理
comment-service 评论、点赞、收藏等用户互动
danmaku-service 弹幕接收、过滤、推送(RocketMQ + WebSocket)
file-service 文件上传接口、MinIO 存储对接
admin-service 后台管理(视频审核、用户管理)
search-service(可选) 视频搜索、标签索引(可结合 ElasticSearch)
gateway-service 请求入口、路由、鉴权、限流
notification-service(可选) 系统通知、用户举报处理、异步发消息

📌 说明

  • 你可以先开发单体版验证功能逻辑,之后再拆服务。
  • 所有服务都可以部署为独立的 Spring Boot 应用。
  • 前期部署环境可以本地运行 + Docker Compose 管理 Redis、MinIO、RocketMQ。
  • 弹幕服务是后期的一个关键亮点,用 WebSocket + RocketMQ 解耦,支撑高并发弹幕实时推送。

相关推荐
weixin_307779132 分钟前
深度解析 Jenkins Git Client 6.4.0 插件:核心功能、应用场景与最佳实践
运维·git·架构·jenkins
wangmengxxw4 分钟前
微服务-服务容错
微服务·云原生·架构·服务容错
Xの哲學6 分钟前
Linux TTY子系统深度剖析
linux·服务器·算法·架构·边缘计算
拾忆,想起8 分钟前
Dubbo灰度发布完全指南:从精准引流到全链路灰度
前端·微服务·架构·dubbo·safari
摇滚侠9 分钟前
2025最新 SpringCloud 教程,Seata-基础-架构原理-整合 Seata 完成,笔记68,笔记69
笔记·spring cloud·架构
刘一说9 小时前
Nacos 权限控制详解:从开源版 v2.2+ 到企业级安全实践
spring boot·安全·spring cloud·微服务·nacos·架构·开源
TG:@yunlaoda360 云老大12 小时前
谷歌云AI 时代的算力革命:CPU、GPU 到 TPU 的架构与定位解析
人工智能·架构·googlecloud
钮钴禄·爱因斯晨12 小时前
# 企业级前端智能化架构:DevUI与MateChat融合实践深度剖析
前端·架构
AnAnCode13 小时前
ECS 架构 (Entity Component System) - 数据导向编程快速入门
java·架构·游戏服务器
Xの哲學14 小时前
Linux RTC深度剖析:从硬件原理到驱动实践
linux·服务器·算法·架构·边缘计算