diff --git a/README.md b/README.md index 735cbf0931a16a0af2bf7cf158ee98d33484da7b..80d61ddfdc2a07695b457943d07c7d0da4ff1449 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,77 @@ -# go微服务 +```markdown +# Go微服务商城系统 -#### 介绍 -{**以下是 Gitee 平台说明,您可以替换此简介** -Gitee 是 OSCHINA 推出的基于 Git 的代码托管平台(同时支持 SVN)。专为开发者提供稳定、高效、安全的云端软件开发协作平台 -无论是个人、团队、或是企业,都能够用 Gitee 实现代码托管、项目管理、协作开发。企业项目请看 [https://gitee.com/enterprises](https://gitee.com/enterprises)} +## 介绍 +这是一个基于Go语言开发的微服务架构电商平台,包含商品、订单、用户、库存、文件存储等核心模块。系统采用gRPC进行服务间通信,使用Gin作为Web框架,并整合了Consul服务发现、OpenTracing分布式追踪等功能。 -#### 软件架构 -软件架构说明 +## 软件架构 +系统由多个独立服务组成: +- **goods-web**: 商品服务API接口 +- **order-web**: 订单服务API接口 +- **user-web**: 用户服务API接口 +- **userop-web**: 用户操作服务(收藏、地址、留言) +- **minio-web**: 文件上传服务 +- **goods-srv**: 商品服务 +- **order-srv**: 订单服务 +- **user-srv**: 用户服务 +- **userop-srv**: 用户操作服务 +- **inventory-srv**: 库存服务 +各服务之间通过gRPC进行通信,使用Consul进行服务注册与发现,支持分布式部署。 -#### 安装教程 +## 安装教程 +1. 安装Go环境(建议1.18+) +2. 安装Docker和Docker Compose +3. 安装并启动MySQL、Redis、Consul、RocketMQ、MinIO等依赖服务 +4. 配置各服务的配置文件(config/config.go) +5. 启动各服务: + ```bash + go run main.go + ``` -1. xxxx -2. xxxx -3. xxxx +## 使用说明 +### 商品服务 (goods-web) +提供以下API接口: +- 商品管理:`List`, `New`, `Detail`, `Delete`, `Stocks`, `UpdateStatus`, `Update` +- 分类管理:`List`, `Detail`, `New`, `Delete`, `Update` +- 品牌管理:`BrandList`, `NewBrand`, `DeleteBrand`, `UpdateBrand`, `GetCategoryBrandList`, `CategoryBrandList`, `NewCategoryBrand`, `UpdateCategoryBrand`, `DeleteCategoryBrand` +- 轮播图管理:`List`, `New`, `Delete`, `Update` -#### 使用说明 +### 订单服务 (order-web) +提供以下API接口: +- 订单管理:`List`, `New`, `Detail` +- 支付管理:`List`, `New`, `Detail` +- 购物车管理:`List`, `New`, `Detail`, `Delete`, `Update` -1. xxxx -2. xxxx -3. xxxx +### 用户服务 (user-web) +提供以下API接口: +- 用户管理:`GetUserList`, `PassWordLogin`, `Register`, `GetUserByMobile`, `GetUserById`, `CreateUser`, `UpdateUser` +- 短信验证码:`GenerateSmsCode`, `SendSMS` +- 验证码中间件:`ValidateMobile` -#### 参与贡献 +### 用户操作服务 (userop-web) +提供以下API接口: +- 地址管理:`List`, `New`, `Delete`, `Update` +- 留言管理:`List`, `New` +- 收藏管理:`List`, `New`, `Delete`, `Detail` -1. Fork 本仓库 -2. 新建 Feat_xxx 分支 -3. 提交代码 -4. 新建 Pull Request +### 文件服务 (minio-web) +提供以下功能: +- 文件上传:`UploadFile` +## 参与贡献 +1. Fork仓库 +2. 创建feature分支 +3. 提交代码 +4. 创建Pull Request -#### 特技 - -1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md -2. Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com) -3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目 -4. [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目 -5. Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help) -6. Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) +## 特技 +- 基于Consul的服务注册与发现 +- 使用OpenTracing实现分布式追踪 +- 基于JWT的用户认证 +- 使用GORM进行数据库操作 +- 基于ProtoBuf的gRPC通信 +- 支持MinIO文件存储 +- 使用Sentinel进行流量控制 +- 支持分布式事务(RocketMQ) +``` \ No newline at end of file