需求概述
假设目前有一个普通的项目,一个图书馆管理系统,后端语言使用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:超级管理员 |