论文部分内容阅读
目前互联网浪潮已袭卷全球,如火如荼,不可阻挡。伴随着一些互联网巨头大规模网络的建设,原有的网络管理模式已越来越不堪负重,庆幸的是人们及时提出了分布式网络的观点。自1978年以来,分布式网络发展迅猛,已深入到计算机科学与技术、信息与通信工程等多个学科。本论文的研究来源于实习公司的实际需求,由于公司内部的业务系统错综复杂,同时由于历史原因,未能形成一整套业务指标监控系统。当公司线上业务出现问题,相关人员跟踪问题不及时,处理问题的能力也有限,并不能很好的给出一个解决方案,导致了公司的直接经济损失。结合公司现状,本论文基于分布式网络,结合实际工作项目,主要论述了一个基于Web的分布式网络实时监控系统的整体设计与实现。具体来说,本文分析了分布式网络实时监控系统的开发背景,结合了当下的实时数据的监控技术,同时阐述了面临的问题并给出了解决方案。本文主要创新点和主要成果在于实现了对时序数据的监控,同时,根据时序数据库(TSDB)的特点,实现了大数据的存储和查询,并且提供了可视化呈现的方案。本文基于B/S(浏览器/服务器)架构,使用HTML5、CSS3、JavaScript、Echarts等主流的前端技术,采用折线图、柱状图等多种方式,着重展现实时数据可视化,以期更加简单、直观的展现实时数据。同时,后端开发语言采用Python,结合Flask框架,着重实现实时数据的采集、实时数据的入库、实时数据的相关处理等操作。数据库采用KairosDB、MongoDB、Redis三种,分别用来存储时序数据、保存时序数据配置、缓存时序数据。本论文所设计实现的分布式网络实时监控系统,为满足实际工作需要,设置了多个功能模块。系统所涉及的主要功能模块有:时序数据采集和处理、监控指标添加、监控指标图表配置、监控指标报警配置、监控指标报警组配置、监控指标报警统计分析等。基于Web的分布式实时监控系统,针对线上业务指标进行了实时的监控,能够及时发现线上问题及并进行报警反馈,提高了开发人员的异常问题跟踪效率,为避免或减少公司的经济损失提供了保障。同时,可视化的图表数据的展现,取代了原始查询数据库数据,然后进行数据逐一校对所带来的工作量,缓解了开发人员的工作压力,提高了开发人员的实际工作的效率。系统在实习公司进行了开发和迭代,最终实现了系统的落地,而且,系统获得了同事和领导的一致好评。