Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/0xcaffebabe/blb

站在系统设计者的角度从零开始, 从前端到后端构建一个微服务外卖订餐系统
https://github.com/0xcaffebabe/blb

Last synced: 3 months ago
JSON representation

站在系统设计者的角度从零开始, 从前端到后端构建一个微服务外卖订餐系统

Awesome Lists containing this project

README

        

# 饱了吧外卖订餐系统

站在系统设计者的角度从零开始构建一个外卖订餐系统

- 多用户,多商家,多骑手O2O订餐系统

传送门:

消费者前端工程:

## 计划

- ~~需求分析~~
- ~~边界划分~~
- ~~架构设计~~
- 后端开发
- ~~接口设计~~
- ~~基础设施服务开发~~
- 业务服务开发
- ~~购物车服务~~
- ~~商品服务~~
- ~~订餐者服务~~
- ~~店铺服务~~
- ~~订单服务~~
- ~~骑手服务~~
- ~~支付服务~~
- ~~商家服务~~
- 位置服务
- 聚合服务开发
- ~~消费者聚合服务~~
- ~~骑手聚合服务~~
- ~~商家聚合服务~~
- 管理员聚合服务
- 前端开发
- 消费者前端
- ~~页面设计~~
- ~~业务逻辑开发~~
- ~~商家前端~~
- ~~页面设计~~
- ~~业务逻辑~~
- ~~骑手前端~~
- ~~页面设计~~
- ~~业务逻辑~~
- 管理系统
- ~~前后端联调~~
- ~~各客户端联调~~
- 功能优化
- 部署运维
- 尝试优化
- 结束

## 碎碎念

终于,历时两个月的时间,整个项目的结构基本起来了,由于时间原因,前端我只挑了选购-下单-支付-出餐-配送这条主线进行编写

其他诸如评价等的功能后端已经完成,但是前端没有完成

从设计到技术选型,再到项目搭建,也算是把最近六个月学的东西应用到实践中,同时也尝试了编写一些自动化脚本,来提高效率

从零开始构建一个项目,取舍很多,坑也很多,但当前期把所有的坑都踩的差不多的时候,后面效率也就起来了

总体来说,这个项目的目的达到了,后面可能会对它进行一些小修小补,这应该会是我最后一个以学习为目的构建的业务系统了。

## 技术架构

![](./doc/系统设计/饱了吧技术架构.png)

## 技术栈

### 后端

#### 基础设施

- 容器管理:docker
- 数据库:mysql
- 注册中心/配置中心:nacos
- 消息队列:rabbitmq
- 文件服务器:fastdfs

#### 框架

- 微服务框架:spring cloud
- 单元测试
- junit5
- mockito
- spring boot test
- h2
- 文档管理:swagger
- 服务调用:open feign
- 服务熔断/降级:alibaba sentinel

#### 运维

- 持续集成:github action

### 前端

- 包管理:npm
- 项目结构:vue cli
- 打包:webpack
- 框架:vue
- vuex
- vue router
- 移动端框架:uniapp
- ui框架:element ui
- css loader:less
- 地图组件:amap
- ajax:axios
- 单元测试:jest