贺胖娇的编程之旅......

一个普通go项目的流程

2022.08.02

需求概述

假设目前有一个普通的项目,一个图书馆管理系统,后端语言使用go,前端使用react,需要做到前后端分离。
数据库可以使用mongoDB或者mysql等等随便什么开源的库,但明确要求,假设这是一个超级多人用的国家级图书管理系统,所以需要支持至少10万的并发量,不允许出现超卖(超借),死锁,同一本书同时被多人借阅等情况(出现概率低于0.1%)
明确要求使用grpc,proto这些目前我还不太熟悉的东西。

需求拆分

分为以下几个子模块:

图书管理

以下是表结构

图书表

字段名 字段类型
图书名 string
图书年号 string
ISBN号 string
作者 string
出版社 string
类别 string
详情id string

图书详情表

分类表

字段名 字段类型
分类id string
分类名称 string
分类父级id string

用户表

字段名 字段类型 字段介绍
用户id string
用户名称 string
用户身份 tinyint 0:普通用户 1:图书管理员 2:超级管理员
发表评论