1.聚源仓储货物管理系统
本人负责该项目的全权筹划及实施,主要使用 MVT 模式进行开发。
数据模型层使用 SQLAlchemy 将 SQL Sever 中的数据映射成 Python 中对应的数据模型,但由于公司原有数据库项自古以来一直未曾变动,并拥有良好的命名格式,因此查看 flask-sqlalchemy 的源码,使用其 Model.metadata.tables[] 直接对数据库所有表进行直接映射,省去建模过程;
视图层代码于 Flask 中进行编写,主要使用 FBV 的形式完成,并带有对应的 URL 映射;
模板层使用 Jinja2+Bootstrap 进行联合制作,数据交互有部分是使用基础的 form 表单来完成,也有部分使用 axios 进行交互。
以 Flask 的蓝图功能,将拣货、盘点、打包三个功能进行划分;权限的管理依赖于 Flask 的 cookies 机制进行角色验证。
对项目编写 dockerfile,使用 gunicorn 运行程序,supervisor 进行管理,部署于 docker 容器中。
2.繁翰 OCR 识别API
本人负责该项目后端主题逻辑架构的构建。
项目由算法工程师使用tensorflow及torch等深度学习包来进行 OCR 算法方面的开发,本人使用 starlette 异步 web 框架进行 API 的设计。
基于 pydantic 进行数据校验,并合理生成 API 文档。
运用多线程和协程的知识将算法服务使用多线程实现,不阻塞主线程运行。
搭建 redis,并为算法工程师提供内存数据的写入和读取的方案。
后续使用关系型数据库来辅助进行账号系统的开发。