系统架构设计
分布式质量监控平台由三种不同功能角色组成,第一种为数据采集探测功能,采用 Python+pycurl 模块实现数据的采集并入库 MySQL;第二种为后台定时 rrdtool 作业,实现 MySQL 数据导出并更新 RRDTOOL,采用了 Python+rrdtool 模块实现;第三种为 Web 报表展示,采用 Django+MySQL+rrdtool 模块实现,服务器端采用了 Nginx+uwsgi 构建高效的 Web 服务,根据管理员发起的请求条件输出不同类型的报表。系统架构图见图15-2。
Figure 1. 图15-2 系统架构图
从图15-2中可以看出系统的整体架构,首先通过不同采集点向业务服务集群发起定时探测任务,将获取的响应数据入库 MySQL,异常返回信息将触发告警。功能模块定时从 MySQL 数据库拉取数据做 rrdtool update 操作,为后续的报表输出提供数据支持。最后管理员通过前端 Web 页面查询、定制输出报表,整个流程结束。