代码改变世界

jesson.shen考勤线程设计

2009-11-24 12:31  $等待$  阅读(413)  评论(1编辑  收藏  举报

 

 

说明:

1.                全省各地市考勤终端通过Socket连接方式与一台接入服务器通讯,把考勤数据上传保存在数据中。(使用一台接入服务器可能无法负荷全省的考勤接入,开发过程需考虑可轻易在其他服务器搭建接入程序,以方便以后系统扩容

2.                接入程序调用相应地区的考勤分析程序,从数据库中取出考勤信息数据进行分析。把分析结果写入数据库并发送考勤短信。(考虑到数据处理均衡,一台服务器需要分析多个地市的考勤数据,并且实现各地区线程灵活开通,方便以后各地区处理线程的转移)。

二、           数据流程

 

说明:

1.                考勤终端通过Socket传输将考勤信息发送到接入程序。

2.                接入程序把考勤信息写入数据库缓冲表中(一个地市对应一个缓冲表),并唤醒所属地区分析进程(一个地市对应一个分析进程)。

3.                分析进程从缓冲表读取考勤信息交给一个线程分析处理(一个分析线程有多个线程)。

4.                考勤信息分析后产生分析数据写入数据库中(一个地市对应一个正常考勤表和一个异常考勤表),并提交考勤短信到短信网关。

5.                短信线程把考勤短信发送到家长手机。

 

一、         数据存储策略

 

 

每个地市包含一套如上图考勤数据表,每个表作用如下说明:

1.                缓冲表:接入进程接收到考勤信息数据后,保存在缓冲表中,分析进程从此表获取考勤数据进行分析。此表每天清空一次数据。

2.                判断表:用于保存分析进程对考勤数据进行分析的判断数据,此表中位学生每天的每一考勤时段只保存一条判断数据。此表每天清空一次数据。

3.                正常考勤表:保存经过分析进行分析后的正常考勤记录,正常考勤记录指非异常考勤记录。此表数据保留三个月。

4.                异常考勤表:保存经过分析进行分析后的异常考勤记录,异常考勤记录指缺勤、迟到、早退、请假等。此表数据保留三个月。

5.                月度汇总表:汇总每间学校每月的考勤状况。

6.                短信记录表:保存发送后的考勤短信明细表。此表数据保留三个月。