一种网络游戏业务状态监控系统及方法与流程

文档序号:12347209阅读:495来源:国知局
一种网络游戏业务状态监控系统及方法与流程

本发明涉及一种网络监控系统,尤其涉及网络游戏业务状态监控系统及方法。



背景技术:

智能监控即通过监控平台,实时的收集汇总当前线上业务服务器的状态数据,并将这些数据进行存储和展示,同时对于这些数据的状态进行实时的判断,一旦出现异常,则发出报警。

为了能够满足大规模服务器的需求,现有的监控平台均采用了分布式的架构,将所有的数据进行汇总,便于统一的管理和展示,不仅能够满足大规模服务器的使用需求,而且对于全国乃至全球多机房部署拥有先天性的支持优势。

但是现有的监控平台,横向扩展性较差,尤其无法满足大规模多机房分布的实时监控要求,无法将所有数据汇总到一个统一的平台内展示,同时对于机房到全国网络状态的实时监控也没有实现。



技术实现要素:

为了解决现有技术存在的不足,本发明的目的在于提供一种网络游戏业务状态监控系统及方法,实现大规模多机房分布网络游戏业务状态和机房到全国网络状态的智能实时监控。

为实现上述目的,本发明提供的网络游戏业务状态监控系统系统,包括,业务状态采集单元、后端监控服务器、前端监控服务器,以及监控数据库,其中,

所述业务状态采集单元,其对游戏服务器进行监控数据采集,并将所述监控数据发送给所述后端监控服务器;

所述后端监控服务器,其用于对所述监控数据处理;

所述前端监控服务器,其用于所述监控数据的展示以及监控内容的配置;

所述监控数据库,其用于存储监控数据和探测数据。

进一步地,所述业务状态采集单元还包括,客户端、代理端,以及探测端,

所述客户端,其根据所述前端监控服务器的监控内容配置信息,对游戏服务器进行监控数据采集,并将所述监控数据通过所述代理端发送给所述后端监控服务器;

所述代理端,其与所述后端监控服务器和所述客户端进行连接通信,将所述客户端的监控数据传输至所述后端监控服务器;

所述探测端,其用于对网络进行探测和探测数据的统计汇总。

进一步地,所述客户端,其安装在游戏服务器中,自动采集所需的游戏服务器监控数据。

进一步地,所述代理端,其与所述客户端进行长连接,定时获取所述客户端采集的监控数据。

更进一步地,所述探测端根据用户预先定义的时间周期和发包规则,定时对网络进行探测。

为实现上述目的,本发明提供的网络游戏业务状态监控方法,包括以下步骤:

1)配置游戏服务器的监控内容;

2)对游戏服务器进行数据采集;

3)对监控数据进行处理并存储;

4)展示监控数据,并对异常的监控数据进行报警。

进一步地,所述步骤1)配置游戏服务器的监控内容,是前端监控服务器接收用户的操作,对游戏服务器的监控内容进行配置。

进一步地,所述步骤2)对游戏服务器进行数据采集,是客户端根据对配置游戏服务器的监控内容,对游戏服务器进行数据采集。

进一步地,所述步骤3)对监控数据进行处理,是后端监控服务器根据规则对监控数据进行汇总。

更进一步地,所述步骤4)展示监控数据,并对异常的监控数据进行报警包括以下步骤:

a)前端监控服务器查询监控数据库中的监控数据并进行展示;

b)后端监控服务器对于异常的监控数据,进行报警处理。

本发明的网络游戏业务状态监控系统及方法监控数据的采集完全由客户端,因此具有如下的技术效果:

1.自动完成,并且支持自定义采集方式,具有良好的扩展性。用户通过配置一台前端监控服务器的采集项目后,服务端能够自动将相关的配置派发到客户端处,随后客户端便会遵从配置文件的内容定时进行采集,在采集过程中无需服务端干预,不但降低了服务端的压力,而且大大提升了客户端采集的安全性和稳定性,保证了数据采集的规范性和一致性,同时由于客户端允许用户自行编写脚本插件作为客户端的采集工具,大大丰富了可以采集的内容,几乎可以适应所有的采集需求。

2.架构中包括代理端,支持扩区域、扩网段、扩机房监控。对于小规模服务器的监控只需要在一个网段内即可,但是随着业务量的增大,不可避免的会出现服务器分布在不同的网段,不同机房,甚至不同的城市,而且这些服务器本身可能之间还无法连通。代理端完美的解决了这些问题,能够将全国各地不同的服务器通过代理端与后端服务器相连,从而解决了大规模分布式部署的服务器监控的问题。

3.数据最终进行汇聚,统一化的处理,便于管理与控制。所有的服务器监控数据都会通过代理端将数据传回服务端进行数据的存储、处理、展示等,不仅能够保证数据的安全性,而且更加便于对于所有监控数据的管理与使用,而无需在各地分别建立数据中心进行处理,大大降低了运营与管理成本。

4.机房至全国网络的实时探测,能够了解各地玩家到游戏服务器的网络情况。通过探测端使得机房到全国各地的网络情况变得清晰透明,尤其是网络游戏这种需要与玩家实时互动的业务,更是需要关注网络情况,从而保障用户体验。

正是因为有了代理端的存在,能够大大提高服务端对于客户端的承载能力,同时解决了不同机房之间网络互联互通的问题,从而实现了分布式、大规模的服务器监控能力。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。

附图说明

附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:

图1为根据本发明的网络游戏业务状态监控系统架构图;

图2为根据本发明的网络游戏业务状态监控方法流程图。

具体实施方式

以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1为根据本发明的网络游戏业务状态监控系统架构图,如图1所示,本发明的网络游戏业务状态监控系统,包括,多个业务状态采集单元10、后端监控服务器20、前端监控服务器30,以及监控数据库40,其中,

业务状态采集单元10,在每个机房,或者每个独立不互通的网段进行部署,并与后端监控服务器20连通,将采集的游戏服务器的监控数据传送到后端监控服务器20。

后端监控服务器20,其负责监控数据相关的处理工作,包括将监控数据存储至监控数据库40中,分析当前采集到的监控数据,将监控数据根据一定的规则进行汇总(例如总在线人数),对于异常的监控数据,根据配置的规则进行相应的报警工作等。所有的数据处理工作均由后端监控服务器20完成,因此后端监控服务器20也是整个监控方法的大脑所在。

本实施例中,后端监控服务器20作为整个系统的大脑,肩负着对所有数据进行处理的功能。需要部署在一个尽可能稳定的机房环境中,因为一旦后端出现故障,那么整个监控系统将变得无法正常使用。部署后端监控服务器需要根据实际监控的游戏服务器数量,以及监控的数据量来决定,由于后端主要负责计算等高强度工作,因此消耗的资源也较大,包括CPU、内存、网络带宽等,因此需要一台强大性能的服务器来保证系统的正常运行。

前端监控服务器30,主要负责监控数据的展示以及监控内容的配置工作,包括查询数据库中所有记录的监控数据(包括当前和历史),配置每台游戏服务器需要的监控项,每个监控项对应的阈值,一旦超过阈值需要发出报警的对象,报警的具体内容等一切需要配置的内容,均在前端实现,因此前端也是整个监控方法的眼睛所在。

本实施例中,前端监控服务器30作为整个系统的入口,不但需要为用户展示采集到的数据,更需要让用户对所有的游戏服务器进行相应的配置。虽然前端出现故障并不会影响整个监控采集的功能,但是作为整个系统与用户交互的入口,会对用户的体验,以及监控的调整变更造成很大的影响。因此同样需要保证前端的稳定性,建议部署在相对稳定的机房,同时使用负载均衡的方式来保证高可用性。

监控数据库40,其分别连接后端监控服务器20和前端监控服务器30,存储监控数据和探测数据。

本发明的业务状态采集单元10,进一步包括:多个客户端101、代理端102,以及探测端103,

每一个客户端101,用于游戏服务器的数据采集,其根据前端监控服务器30接受用户对游戏服务器进行监控的内容配置信息,对游戏服务器进行监控数据采集,并将采集的监控数据通过代理端102发送给后端监控服务器20。其中,监控数据采集包括了游戏服务器基础数据(如:CPU、内存、网卡等)的采集和业务数据的采集(如:在线人数、排队人数、连接数据库状态等)。

代理端102,其作为后端监控服务器20和客户端101数据交互的中间桥梁,同时与后端监控服务器20和客户端101进行连接通信,将客户端101的所有监控数据平稳安全的传输至后端监控服务器20。代理端102会与归属于其下的客户端101进行长连接,并定时去客户端101处获取所有采集到的监控数据,将获取到的所有数据整理汇总后提交至后端监控服务器20。

本实施例中,代理端102需要在每个机房,或者每个独立不互通的网段进行部署,同时需要保证代理端102与其管理的所有客户端101的网络是连通的,并且代理端102能够与后端监控服务器20连通。由于代理端102需要与很多客户端程序相连,因此代理端102对于所在服务器的连接数是最主要的资源开销。只要保证了代理端102的网络通常,则监控数据就可以源源不断的从客户端101传回后端监控服务器20。

探测端103,其用于检测机房到全国各地的网络情况,包括丢包率和延迟两个维度。探测端103会根据用户预先定义好的时间周期以及发包规则,定时的对全国各地主要IP进行相应的发包探测工作,并将探测得到的探测数据进行统计汇总,传输给后端监控服务器20并存储到监控数据库40中。前端监控服务器30会对于这种特定格式的探测数据进行分析,并以中国地图的形式将这些数据展现在一幅中国地图上,从而清晰的看到全国各地到机房的实时网络情况。

本实施例中,探测端103需要部署在游戏业务所在的机房,如果此机房拥有多个网络出口,则需要在每个网络出口均部署探测端102以保证监控的完整性。同时需要收集全国各地主要地区的网络IP地址,并通过前端配置到系统中。系统会使每个探测端102都对所有录入的IP进行实时的探测,并将得到的结果返回至服务端进行相应的处理。由于探测端103需要不断的发包进行探测,因此对于网络带宽消耗的资源较大,在部署时应尽可能选择在网络条件较好的地方,避免因为部署所在的服务器异常导致误报的情况。

本发明的网络游戏业务状态监控系统,其服务端做为整个监控体系的核心部分,负责数据的存储与展示,分析与计算,判断与报警等重要工作。由于服务端的功能较多,因此服务端拆分为了前端与后端两部分。

图2为根据本发明的网络游戏业务状态监控方法流程图,下面将参考图2,对本发明的网络游戏业务状态监控方法进行详细描述。

首先,在步骤201,前端监控服务器30接收用户的输入,对所有的游戏服务器的监控内容进行相应配置,并将监控的内容配置信息通过后端监控服务器20发送到相应的业务状态采集单元10的客户端101。

在步骤202,客户端101根据所述监控的内容配置信息,对相应的游戏服务器进行监控数据采集,监控数据采集包括了游戏服务器基础数据(如:CPU、内存、网卡等)的采集和业务数据的采集(如:在线人数、排队人数、连接数据库状态等)。

在步骤203,客户端101将采集的游戏服务器的监控数据,通过代理端102发送给后端监控服务器20。

在步骤204,后端监控服务器20接收监控数据并进行处理,包括将监控数据存储至监控数据库40中,分析当前采集到的监控数据,将监控数据根据一定的规则进行汇总(例如总在线人数),对于异常的监控数据,根据配置的规则进行相应的报警工作等。

在步骤205,前端监控服务器30为用户展示采集到的监控数据查询,并监控数据库40中所有记录的监控数据(包括当前和历史);根据监控的内容配置信息,配置每个监控项对应的阈值,一旦超过阈值发出报警提示。

本发明的客户端101,包含了windows和linux两个版本,由于目前网络游戏采用的服务器操作系统主要就是这两种操作系统,因此客户端101完全可以满足业务的实际需求。在客户端101内,会包含各类数据采集所需的采集插件,客户端根据用户预先定义的规则逻辑,自动定时调用这些插件进行相应的采集工作,并将采集得到的数据保存在内存中,等待代理端前来获取。

对于所有需要监控的游戏服务器,均需要根据自身运行的系统(Linux或者Windows)安装对应版本的客户端程序,客户端程序中会包含常用的数据采集插件,用于配合客户端自动采集使用。客户端仅需要第一次安装初始化,一旦完成后,后续客户端均会以系统服务的形式存在,能够随着操作系统自动的起停,无需用户干预。由于客户端的功能精炼,经过优化后对于服务器的开销非常的小,几乎可以忽略不计,用户无需担心由于监控客户端对服务器负载造成任何影响。

本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1