云计算百科
云计算领域专业知识百科平台

云购(CloudMart)云原生网站全栈实践项目

从零到一构建云原生电商平台:CloudMart 实战全记录

你是否曾想完整地做一个微服务项目,却被繁杂的架构选型和环境配置劝退?你是否听过 Docker、Kubernetes,却不知道如何把它们真正用到一个项目里?

CloudMart 是我在毕业设计中完成的云原生数码商城——它不是一个 Demo,而是一个具备完整电商交易闭环的真实系统:

  • 前台:商品浏览、下单购买、秒杀抢购

  • 后台:商品管理、订单管理、用户管理、系统配置、操作日志

  • 技术:Spring Boot 3 微服务(4个独立服务)+ Vue 3 前端 + Docker 容器化 + K8s 编排

本系列文章会带你从 0 到 1 走完整个项目:从服务拆分 → API 设计 → 秒杀方案 → Docker 部署 → K8s 上云,分享我在踩坑中总结的经验。每篇文章都有可运行的代码和配置,你可以照着一步步做出来。

无论你是为了学微服务、准备毕业设计,还是想补齐 DevOps 实战经验,这个系列都值得你花时间看一看。

CloudMart 是一个完整的云原生数码商城系统,包含:

  • 前台商城:用户浏览商品、下单购买、秒杀抢购

  • 后台管理:商品管理、订单管理、用户管理、系统配置、操作日志

项目的三层定位

层次说明
业务层 完整的电商交易闭环(浏览 → 下单 → 支付 → 秒杀)
技术层 微服务架构 + 容器化部署 + Kubernetes 编排
运维层 Docker Compose 一键启动 → 本地 K8s → 云上 ACK 部署

项目的结构

E:\\CloudMart/

├── 📁 cloudmart-server/                          # 【后端源码】Spring Boot 微服务
│   ├── pom.xml                                   # 父POM,版本 Spring Boot 3.2.5
│   ├── cloudmart-common/                         # 公共模块(Result、异常处理、JWT、拦截器)
│   ├── cloudmart-user-service/                   # 用户服务(端口 8081)
│   ├── cloudmart-product-service/                # 商品服务(端口 8082)
│   ├── cloudmart-order-service/                  # 订单服务(端口 8083)
│   └── cloudmart-seckill-service/                # 秒杀服务(端口 8084)

├── 📁 cloudmart-web/                             # 【前端源码】Vue 3 + Vite
│   ├── src/
│   ├── public/images/                            #  商品图片
│   ├── package.json
│   └── vite.config.js                            #  代理配置(/api → 各后端服务)

├── 📁 ops/                                       # 【运维基础设施】IaC 核心目录
│   ├── 📁 docker/
│   │   ├── Dockerfile.user                       #  用户服务镜像构建文件
│   │   ├── Dockerfile.product                    #  商品服务镜像构建文件
│   │   ├── Dockerfile.order                      #  订单服务镜像构建文件
│   │   ├── Dockerfile.seckill                    #  秒杀服务镜像构建文件
│   │   ├── Dockerfile.web                        # 前端镜像构建文件
│   │   └── docker-compose.yml                    #  6个容器编排文件
│   │
│   ├── 📁 k8s/                                   # 【K8s 部署清单】
│   │   ├── base/                                 # namespace, configmap, secret
│   │   ├── middleware/                           # MySQL, Redis (StatefulSet/Deployment)
│   │   ├── services/                             # 各微服务 Deployment + Service + HPA
│   │   └── ingress/                              # Ingress 路由
│   │
│   ├── 📁 monitoring/                            # 可观测性
│   ├── 📁 ci-cd/                                 # GitHub Actions
│   └── 📁 scripts/                               # 辅助脚本

├── 📁 docs/                                      # 文档与截图
│   └── image.png                                 # 截图

├── 📁 cloudmart-server/sql/                      #  SQL 脚本
│   ├── init.sql                                  #  基础建表 + 商品数据(utf8mb4)
│   └── admin_init.sql                            # 扩展表 + 系统配置(utf8mb4)

└── 📄 架构报告.md

前端技术栈

技术版本用途
Vue 3 核心框架,Composition API
Vite 5.1 构建工具 + 开发服务器
Element Plus 2.6 UI 组件库
Pinia 状态管理
Vue Router 4 路由管理
Axios HTTP 客户端(双 Token 拦截)
ECharts 5 数据图表

后端技术栈

技术版本用途
Spring Boot 3.2.5 核心框架
Java 17 运行时
MyBatis-Plus 3.5.5 ORM 框架
MySQL 8 关系型数据库
Redis 7 缓存 + 秒杀库存预热
JWT 用户/管理员鉴权
Spring Cloud 2023.0.1 微服务套件

运维技术栈

技术用途
Docker 容器化运行环境
Docker Compose 多服务编排
Nginx 前端静态服务 + API 反向代理
Kubernetes 容器编排
Prometheus + Grafana 监控体系

接下来几日我即将分享一下我该项目的心得。

赞(0)
未经允许不得转载:网硕互联帮助中心 » 云购(CloudMart)云原生网站全栈实践项目
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!