写点什么

食堂就餐卡系统架构设计文档

用户头像
朱月俊
关注
发布于: 2020 年 06 月 10 日
食堂就餐卡系统架构设计文档

1 设计概述

食堂就餐卡系统是一个服务于企业内部员工的系统,方便用户就餐,也能为用户的部分财产提供安全服务。

1.1 功能概述

系统主要功能包括就餐卡注册、充值、用户身份及余额查询、扣费、消费数据监控与打印。

使用者包括员工、服务员、管理员。

1.2 非功能约束

食堂就餐卡系统预计一年用户量在5万以内,日消费次数为50万以内。

1.余额等查询性能目标:平均响应时间<100ms,95%响应时间<500ms,单核TPS>100;

2.充值与扣费性能目标:平均响应时间<800ms,95%响应时间<1s,单核TPS>50;

3.注册登记性能目标:平均响应时间<800ms,95%响应时间<1s,单核TPS>50;

4.系统核心功能可用性目标:>99.99%;

5.系统安全性目标:系统课拦截频繁消费,每张卡每天消费次数、消费金额收到限制。

6.数据持久化目标:>99.99999%。



2 系统部署图与整体设计

系统上线时预计部署2台物理机,3个子系统,和公司1个系统交互,和外部第三方1个系统交互。

2.1 系统用例图

2.2 系统部署图

  • 客户端:客户与管理中心的桥梁,用户通过客户端来访问服务,比如注册、查询、充值等。

  • Nginx网关:用来转发用户请求时间。

  • 用户数据监控系统:通过管理中心获取用户的过往消费数据并聚类分析。

  • 卡管理中心:食堂就餐卡系统的核心逻辑处理部分,并且唯一且直接与后台数据库打交道。

  • 收款机:用户扣费。

  • 第三方支付系统:可以通过第三方支付系统进行充值。

  • 公司财务系统:对接卡管理中心,可以将员工的工资直接转到卡管理中心,实现充值。

2.3系统组件图

去除第三方系统,共有5个子组件。

  • 用户接口组件:与用户打交道的SDK,用户可以用来注册、查询个人信息。

  • 网关:用来转发用户请求时间。

  • 管理中心组件:食堂就餐卡系统的核心逻辑处理部分,并且唯一且直接与后台数据库打交道。

  • 后台数据库:存储用户个人信息以及消费、余额等信息。

  • 数据监控组件:通过管理中心获取用户的过往消费数据并聚类分析。

2.4 注册登记场景子系统时序图

  • step1:用户通过app向管理中心发起注册事件,中间经过网关服务;

  • step2:网关将事件转发给上游管理中心,管理中心判断用户是否重复注册;

  • step3:若第一次注册,会将用户数据写入数据库,如已经注册过则直接向用户返回成功并告知什么时候注册过;

  • step4:用户拿到管理中心的注册返回值;



发布于: 2020 年 06 月 10 日阅读数: 53
用户头像

朱月俊

关注

还未添加个人签名 2017.11.06 加入

还未添加个人简介

评论

发布
暂无评论
食堂就餐卡系统架构设计文档