黄锦捷
(河源职业技术学院,河源 517000)
智慧校园服务监控平台的设计与实现
黄锦捷
(河源职业技术学院,河源 517000)
针对智慧校园服务应用众多、维护困难的现状,提出基于服务理念的服务监控平台,并对平台的模型、策略和方法进行设计和实现,通过服务监控平台实现对智慧校园服务的监控和维护。
智慧校园;监控;服务;应用系统
随着教育信息化的不断推进,各高校基本建立了符合各自校情的数字化校园。智慧校园是教育信息化进程中,在数字校园建设基础上提出来的[1]。许多高校正在建立或已经完成了数字校园到智慧校园的建设。
黄荣怀教授认为,智慧校园是指一种以面向师生个性化服务为理念,能全面感知物理环境,提供无缝互通的网络通信[2]。因此,智慧校园需要一系列基础平台和系统作支撑。所有平台和系统相互协作,共同完成智慧校园的功能。
数量众多的平台和系统给维护带来了困难。如何对各个系统的状态进行监控,发现异常并对异常及时告警,成了一个重要问题。 本文提出并实现了一个服务监控平台,很好地解决了以上问题,同时拥有良好的灵活性的扩展性,以应对不断发展的智慧校园需求。
智慧校园平台中,需要监控的对象类型很多,如硬件设备、软件系统、Web Service服务、Web站点等。为解决这些类型不统一的问题,本文提出一个服务概念,即无论任何对象,其本质都是为智慧校园提供一种服务,所有服务一起构成了智慧校园的整体。那么,监控的本质其实就是监控服务是否有异常。
因此,本文设计了一个服务模型。
图1 服务模型
服务模型主要包括以下方法:isAlive、isAvaliable、connect、disconnect、call、report。
isAlive方法用于检测服务是否alive(存活)。
isAvaliable方法用于检测服务是否 avalible(可用)。alive与avalible是两个不同概念。alive只能说明服务还在,但不保证能正常响应客户请求。avalible则是在alive的同时,对于外界的请求依然能正常响应。
connect方法用于与服务进行连接。disconnect则与服务断开连接。call方法用于向服务发送消息并获得响应内容。report方法用于服务提供者主动向监控平台报告状态。
(1)定时监控策略
网络服务一般24小时不间断提供,如果某个时间段无法访问,则服务很可能出现异常。定时监控策略的思想是通过周期性的轮询方式访问服务来确定服务是否正常,如每十分钟访问服务一次。定时监控策略可分为基于网络协议的监控策略和基于接口的监控策略。
①基于网络协议的监控策略
目前,各种系统一般基于TCP/IP协议建立服务。该协议需要监听一个网络端口。基于网络协议的监控策略,即通过检测该服务端口的情况来判断服务是否存活。
这种策略简单易实现、通用性强并且被监控对象无须额外实现。如使用HTTP/HTTPS协议检测Web站点情况;使用FTP协议检测文件服务器;使用Telnet检测C/S服务等。
这种策略也存在一定的缺陷,如数据库异常时,通过HTTP/HTTPS协议访问Web站点返回的HTTP状态同样是正常的,但此时站点其实已经处于异常状态。即基于网络协议的监控策略只能检测服务alilve,但不能完全确定服务是avaliable。
②基于接口的监控策略
为进一步确定服务avaliable的状态,可使用基于接口的监控策略。基于接口的监控策略,需求服务提供者实现一个通用接口,监控平台访问该接口时可获得服务的 avaliable状态,即需要实现服务模型中的isAvaliable方法。
基于接口的监控策略能更好了解服务的状态,但其缺点就是需要在服务端实现接口。
(2)主动报告策略
定时监控策略主要通过轮询的方式实现,并且通过设置轮询周期的长短可以满足不可监控的实效性的要求,基本能满足大部分监控场景的需求。但无论周期设置多短,延迟依然存在,无法达到实时性要求非常高的系统的要求。
主动报告策略,监控平台向所有服务开放接口,服务端主动向该接口发送状态报告。通过主动报告的方式,监控平台可以更及时发现服务端的异常。
图2 服务监控平台架构
平台通过各种服务监听模块监控服务对象,核心服务为服务组件与监控策略。基础组件包括任务调度、数据持久、告警机制、网络通信组件。
(1)服务监听模块对各需要监控的服务对象进行监控与通信,包括监控服务对象的各种状态、接收服务对象发送的报告、发送状态信息或运行命令给服务对象等。
(2)核心服务包括服务组件和监控策略。服务组件实现与各种服务对象通信的协议和方法,并且可扩展更多类似的服务。监控策略实现前文提到的监控策略,对不同的服务对象采用最适合的策略。
(3)基础组件是平台的底层组件,为平台提供基本的服务能力。
服务监听模块根据服务对象取到相应的服务组件,并调用相应的方法进行处理。服务监听方法如下:
服务组件是平台的核心组件,是平台对各种服务对象进行监控与通信的基础。通过监控接口,实现基本TCP/IP和UDP的服务类,并在TCP/IP的基础上实现更多上层协议的服务类。服务组件的类图如下:
图3 服务组件类图
(1)定时监控策略,通过定时检测服务对象的状态,来确定服务对象的可用性。其代码如下:
(2)主动报告策略,服务平台监听端口,服务对象主动向平台发送报告,平台将调用服务对象的监控方法进行处理。其代码如下:
(1)任务调度组件,将定时调度需要监控的任务,通过Spring与Quartz整合实现。通过如下配置实现:
(2)数据持久化负责数据的存储,由MyBatis实现,并与Spring整合使用。其配置如下:
本文通过服务模块的设计、监控策略的选择,构建起一个灵活、可扩展的智慧校园服务监控平台。根据不同的服务对象及使用场景,选择不同的服务组件及监控策略,达到最合适的监控效果。服务监控平台的推广,可有效解决智慧校园服务众多、监控困难的问题,在智慧校园服务不断增加的趋势下,其作用也将越来越大。
[1]于长虹,王运武,马武.智慧校园的智慧性设计研究[J].中国电化教育,2014,09:7-12.
[2]黄荣怀.智慧校园:数字校园发展的必然趋势[J].开放教育研究.2012,18(4):12-17.
作者简介:
黄锦捷(1989-),男,广东河源人,硕士,研究方向为搜索引擎、数据存储
Design and Implementation of Intelligent Cam pus Service Monitoring Platform
HUANG Jin-jie
(Heyuan Polytechnic,Guangdong 517000)
According to the state which lots of service application and difficult to maintain for the Smart Campus,proposes a service monitoring platform based on service concept,designs and implements the platform model,strategies and methods,through service monitoring platform tomonitor and maintain the service of Smart Campus.
2017-02-22
2017-05-01
1007-1423(2017)13-0076-05
10.3969/j.issn.1007-1423.2017.13.018
Smart Campus;Monitor;Service;Application System