[关闭]
@leptune 2016-11-23T04:09:57.000000Z 字数 1332 阅读 1296

唯中统计架构

工作


源码可复制黏贴到:https://www.websequencediagrams.com/ 进行查看

1. 写入

img

  1. title 唯中统计-写入
  2. # 角色
  3. participant 客户端
  4. participant Swoole服务端《进程》
  5. participant Redis数据库
  6. # 客户端逻辑
  7. 客户端 -> +Swoole服务端《进程》: 调用[/submit/download接口]来发送日志
  8. Swoole服务端《进程》 -> +Redis数据库: 获取[合法接口集合]
  9. Redis数据库 --> Swoole服务端《进程》: 成功
  10. alt [/submit/download接口]在[合法接口集合]中 (成功情况)
  11. Swoole服务端《进程》 -> Redis数据库: 保存到【实时数据队列】
  12. Redis数据库 --> -Swoole服务端《进程》: 成功
  13. Swoole服务端《进程》 --> 客户端: 成功
  14. else [/submit/download接口]不在[合法接口集合]中 (失败情况)
  15. Swoole服务端《进程》 --> -客户端: 不合法的接口!
  16. end

2. 导入旧数据

img

  1. title 唯中统计-导入旧数据
  2. # 角色
  3. participant 后台
  4. participant 导入旧数据《进程》
  5. participant 旧数据所在数据库
  6. participant Redis数据库
  7. # 导入旧数据逻辑
  8. 后台 -> +导入旧数据《进程》: 创建导入旧数据进程
  9. 导入旧数据《进程》 -> +旧数据所在数据库: 读取数据
  10. 旧数据所在数据库 --> -导入旧数据《进程》: 成功
  11. 导入旧数据《进程》 -> +Redis数据库: 保存到【历史数据队列】
  12. Redis数据库 --> 导入旧数据《进程》: 成功
  13. 导入旧数据《进程》 -> Redis数据库: 将[/submit/download接口]加入[合法接口集合]
  14. Redis数据库 --> -导入旧数据《进程》: 成功,进程结束

3. 分析历史数据

img

  1. title 唯中统计-分析历史数据
  2. # 角色
  3. participant 后台
  4. participant 分析历史数据《进程》
  5. participant Redis数据库
  6. # 分析历史数据逻辑
  7. 后台 -> +分析历史数据《进程》: 创建分析历史数据《进程》
  8. 分析历史数据《进程》 -> +Redis数据库: 读取【历史数据队列】
  9. Redis数据库 --> 分析历史数据《进程》: 成功
  10. 分析历史数据《进程》 -> Redis数据库: 分析并存入【分析数据队列】
  11. Redis数据库 --> -分析历史数据《进程》: 成功,进程结束

4. 分析实时数据

img

  1. title 唯中统计-分析实时数据
  2. # 角色
  3. participant Redis数据库
  4. participant 分析实时数据《进程》
  5. # 分析实时数据逻辑
  6. loop 无限循环
  7. 分析实时数据《进程》 -> +Redis数据库: 监听【任务实时数据队列】
  8. Redis数据库 --> +分析实时数据《进程》: 有数据来到
  9. 分析实时数据《进程》 -> -Redis数据库: 分析并存入【分析数据队列】
  10. Redis数据库 --> -分析实时数据《进程》: 成功
  11. end

5. Web展示分析

img

  1. title 唯中统计-Web展示分析
  2. # 角色
  3. participant Redis数据库
  4. participant Web统计后台
  5. # Web展示分析结果逻辑
  6. Web统计后台 -> +Redis数据库: 读取【分析数据队列】
  7. Redis数据库 -> -Web统计后台: 展示结果
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注