这个月,我正式开始做一个自己的在线视频平台项目,暂时使用 HAOVP 作为项目代号。
在此之前,我接触过 Java 业务开发、接口、数据平台、服务器更新和前后端联调,也提前了解过一些微服务、容器和视频处理相关技术。但准备技术知识和真正启动项目是两件事。对我来说,项目的正式起点是 2025 年 12 月:从现在开始把目标、范围和任务明确下来,并逐步实现和验证。
为什么选择在线视频平台
我不想只做一个视频播放页面。在线视频平台天然会遇到多个相互关联的问题:用户怎样登录,视频怎样上传、保存和播放,评论和互动怎样组织,内容怎样管理,前台和后台怎样协作。
这些问题覆盖了我想继续练习的几个方向:
- Java 后端和接口设计;
- 用户端与管理端开发;
- 文件和视频资源处理;
- 数据库、缓存与对象存储;
- 服务之间的边界与调用;
- 部署、日志、监控和问题排查;
- 功能测试与异常场景验证。
选择这个题目,不是因为我已经掌握了全部技术,而是因为它足够完整,可以把零散知识放进同一个系统里逐步验证。
先把目标控制在可以推进的范围
“在线视频平台”很容易被写成一个过大的目标。如果一开始就把直播、复杂推荐、大规模集群和所有社交功能都放进去,项目可能长期停留在规划阶段。
当前更重要的是先形成一条完整的基础链路:
用户进入系统
-> 注册或登录
-> 浏览视频内容
-> 上传和管理视频
-> 播放与互动
-> 后台进行内容管理接下来我会先围绕这条基础链路逐段推进。推荐、消息、监控和多节点部署先放进后续清单,等核心流程稳定后再决定怎样展开。
为什么想独立完成
工作项目通常有既定的平台、业务规则和协作边界。个人项目给了我一个机会,可以从需求理解开始,自己决定功能优先级、技术方案和验收标准。
独立完成并不意味着所有事情都只靠手工输入。我会使用 Codex 辅助实现、重构、测试补充、排障和文档整理,但项目的需求理解、架构和技术决策、任务拆解、代码审查、测试判断、联调和最终验收由我负责。
我:目标、决策、拆解、审查与验收
Codex:实现辅助、重构、测试补充、排障与文档整理这条边界从项目开始时就需要明确。AI 可以提高实现和整理效率,却不能替我承担项目结果。
启动阶段先回答几个问题
在正式写大量代码之前,我需要先回答:
- 最先服务哪类用户;
- 第一版必须完成哪些业务链路;
- 用户端和管理端分别承担什么职责;
- 视频文件、封面和业务数据怎样分开保存;
- 登录认证和权限边界如何处理;
- 哪些功能需要拆分,哪些暂时保持简单;
- 怎样判断一个功能真正完成;
- 如何在不暴露敏感配置的前提下部署和记录。
有些问题现在只有初步方向,还不能写成已经确定的事实。我会把不明确的部分留在待确认清单里,随着实现和验证再调整。
不把“高可用”当作一句口号
项目名称中包含“高可用”,我需要把这个目标拆成一组能够实际验证的问题。
我目前更愿意把它拆成可以验证的问题:
- 单个服务异常时,影响范围有多大;
- 服务之间怎样发现和调用;
- 请求入口怎样统一管理;
- 数据、缓存和文件存储出现异常时怎样处理;
- 部署后能否观察服务状态;
- 所谓多节点方案是否真的能切换和恢复。
这些问题目前都要通过后续部署和测试逐项回答。我会先建立能够运行和复现的基础环境,再记录每一项验证得到的结果。
第一阶段的工作方式
我准备把项目拆成可以验收的小任务,而不是一次要求 AI 生成完整系统。
明确需求
-> 划分模块
-> 编写或辅助实现
-> 本地编译
-> 接口和页面联调
-> 记录问题
-> 修复并重新验证每一步都要保留判断:代码能编译不代表功能正确,接口返回成功不代表业务状态完整,页面能打开也不代表权限和异常路径已经验证。
现在只是开始
截至 2025 年 12 月 6 日,我能确认的是:项目正式启动,目标是独立完成一个面向学习、实验和工程实践的在线视频平台,并以完整业务链路作为持续开发方向。
接下来要继续梳理第一版功能、服务边界和技术选型,再把它们拆成能够单独实现和验收的任务。
我想通过这个项目得到的,不只是一个可以播放视频的网站,而是一段从需求、设计、实现到部署和验收都由自己真正走过的过程。今天先把起点记下来。