全栈 示例内容 · 待替换

校园二手交易平台

让校内闲置物品在可信身份下更快完成发布、检索、沟通和线下交付。

角色
项目负责人 / 全栈开发
时间
2025.02 - 2025.05
校园二手交易平台封面
01 / PROBLEM

一句话

校内交易群信息沉淀差、检索困难,买卖双方也难以判断对方是否属于校园社区。

02 / CONTEXT

背景与目标

课程设计阶段对 80 名学生进行访谈后发现,发布门槛和沟通效率比复杂支付更关键。项目因此聚焦可信身份、结构化商品信息和轻量沟通。

  • 让用户在三分钟内完成商品发布。
  • 支持关键词、分类、价格与校区组合筛选。
  • 建立从发布到下架的完整状态流转和内容治理能力。
03 / ROLE

我的角色

项目负责人 / 全栈开发

  1. 负责需求访谈、领域模型、迭代排期和最终部署。
  2. 完成商品、收藏、消息和管理端核心接口。
  3. 设计移动优先界面并推动可访问性与性能优化。
04 / STACK

技术栈

JavaSpring BootVue 3PostgreSQLRedisDocker
05 / SYSTEM

架构图 / 数据流

Vue 客户端通过 REST API 访问 Spring Boot 服务;PostgreSQL 保存交易事实,Redis 缓存热门列表和会话,对象存储承接图片资源。

校园交易平台整体架构
校园交易平台整体架构
06 / FEATURES

核心功能

结构化发布

通过表单模板、图片压缩和草稿保存降低发布成本。

组合检索

支持分类、价格、校区和关键词多条件筛选。

状态化交易

覆盖在售、预订、完成、下架与申诉状态,避免线下沟通失控。

07 / TRADE-OFFS

难点与解决方案

商品列表筛选随条件增加快速变慢

为高频组合建立复合索引,将热门首页缓存,并用游标分页替代大偏移分页。

图片上传导致移动端发布中断

客户端先压缩与裁切,服务端异步生成缩略图,上传失败时保留草稿并支持重试。

08 / OUTCOME

结果

在课程项目灰度测试中服务 1,200+ 名用户,商品列表 P95 为 340ms,平均发布耗时缩短到 2.6 分钟。

1,200+测试用户
340ms列表 P95 响应10 万条模拟商品数据
2.6min平均发布耗时
78%次周留存课程项目灰度测试
11 / RETROSPECTIVE

复盘

如果重做,我会更早拆分交易履约和社区治理边界,并增加端到端监控;同时应该限制首版范围,把聊天能力延后到核心交易闭环稳定之后。