1.2 KiB
1.2 KiB
计划实现的bonus:
- 缓存
- 并发
有时间打算实现的bonus(按优先级次序排序):
- GUI前端和完整部署方案
- UTF-8中文支持
- Validator
模块划分
整个程序分为核心和前端两部分,核心即主体部分
核心
核心只有一个可执行文件,书店实例通过配置文件夹来决定(默认为当前目录下.bookstore
文件夹,亦可通过命令行参数指定)。当书店系统在运行时,有且仅有一个core进程,它实际响应查询、维护数据库并与磁盘交互,有一个或多个session进程,进程间用命名管道通讯
core进程
数据库模块
维护相关数据,支持并发
引擎模块
具体执行业务,支持并发
通信模块
负责维护与session进程之间的通讯,向引擎模块发送请求,并把响应返回给session进程。支持并发
session进程
提供命令行的会话方式,交互本身可以支持(对接前端)或不支持(用户直接操作session)
前端
不清楚有没有时间写。WebUI,采用Node.JS
+Socket.IO
,不打算弄得很好看,不打算支持响应式设计,支持图形操作和“云命令行”。