发明内容
本发明的目的是利用无线空口厂家的API、外部设备厂家的接口协议(ATS信号厂家和时钟设备厂家)进行应用开发。实现调度服务器与调度台设备、网管设备、全网录音设备、机车台、固定台、ATS信号厂家、时钟设备厂家的通信。
本发明采取的技术方案是:一种采用模块化高稳定性的调度服务器系统,其特征在于,所述系统分为两大部分:调度服务器软件部分和调度服务器管理软件部分;调度服务器软件程序模块分为二开设备模块、数据库模块、外部接口模块、通用模块、空口模块和界面显示模块;其中程序模块通过二开设备模块分别与调度服务器管理软件模块、调度台模块、网管模块、全网录音模块和接口服务器模块逻辑连接,负责处理调度服务器程序模块作为TCP服务端的方式来管理通信;数据库模块为SQL Server数据库模块;程序模块通过外部接口模块分别与ATS模块和时钟模块逻辑连接,用来与ATS信号系统前置机进行交互,获取列车的位置信息,从时钟系统获取时钟信息;通用模块包括日志模块、通用方法、二开协议和配置文件;程序模块通过空口模块分别与SDR模块、TCS模块和LTE模块逻辑连接,用来与无线服务器进行交互,借助无线服务器完成与移动车载终端的短信通信;界面显示模块用于二开设备连接状态显示、列车位置显示和接口连接状态显示。
所述的调度服务器管理软件的主界面模块部分通过二开设备模块分别与调度服务器客户端模块、调度服务器服务端模块及调度服务器软件服务端模块逻辑连接;通过评判模块进行主备判定和主备切换;通过监控模块分别对ATS网口和ATS数据进行监控、对数据库进行监控、对空口网口和空口网关进行监控、对调度服务器软件进行监控、对调度服务器进行监控。
所述的监控模块对调度服务器监控程序执行以下操作:开始,等待监控指令,接收到监控指令,然后判断是否接收到程序退出指令,若接收到程序退出指令,程序结束;若未接收到程序退出指令,则判断当前调度服务器是否为要检测的调度服务器,如果是,则返回继续等待监控指令;如果不是,接下来判断要检测的调度服务器是否可以Ping通其对应的IP地址,如果是,Ping要检测的调度服务器的IP地址不通次数归零,然后返回继续等待监控指令;如果不是,Ping要检测的调度服务器的IP地址不通次数加1。
所述的ATS网口监控程序执行以下操作:开始,判断要检测的ATS是否启用,若未启用,则程序结束;若可用,接下来判断要检测的ATS网口是否可用,若不可用,要检测的ATS网口不可用次数加1,若可用,要检测的ATS网口不可用次数归零,程序结束。
所述的ATS数据监控程序执行以下操作:开始,判断ATS数据是否正常,若ATS数据不正常,ATS数据不正常时间加1,若ATS数据正常,ATS数据不正常时间归零,程序结束。
所述的调度服务器软件监控程序执行以下操作:开始,判断当前调度服务器软件进程是否存在,若调度服务器软件进程不存在,启动当前调度服务器软件进程,当前调度服务器软件进程异常次数加1;若调度服务器进程软件存在,程序结束。
所述的空口网口监控程序执行以下操作:开始,判断空口网口是否可用,若空口网口不可用,空口网口不可用时间加1;若空口网口可用,空口网口不可用时间归零,程序结束。
所述的空口网关监控程序执行以下操作:开始,判断空口网关对应的IP地址是否可以ping通,若空口网口网关对应的IP地址不可以Ping通,空口网口网关对应的IP地址不可以Ping通时间加1;若空口网口网关对应的IP地址可以Ping通,空口网口网关对应的IP地址不可以Ping通时间归零,程序结束。
所述的数据库监控程序执行以下操作:开始,判断数据库是否可用,若数据库不可用,数据库不可用次数加1;若数据库可用,数据库不可用次数归零,程序结束。
所述的主备判定程序执行以下操作:开始,评判调度服务器软件进程状态,判断调度服务器软件进程状态是否正常,若调度服务器软件进程状态正常,接下来评判调度服务器状态,判断调度服务器状态是否正常,若调度服务器状态正常,接下来评判ATS网口状态,判断ATS网口状态是否正常,若ATS网口状态正常,接下来评判数据库状态,判断数据库状态是否正常,若数据库状态正常,评判空口网口状态,判断空口网口状态是否正常,若空口网口状态正常,评判空口网关状态,判断空口网关状态是否正常,若空口网关状态正常,评判ATS数据状态,判断ATS数据状态是否正常,若ATS数据状态正常,程序结束;否则调度服务器软件进程状态、调度服务器状态、ATS网口状态、数据库状态、空口网口状态、空口网关状态、ATS数据状态的评判均进入主备判定。
采用模块化开发,利用单例模式、抽象工厂等设计模式进行程序架构设计。本系统由两个软件组成。第一个软件为调度服务器软件,第二个软件为调度服务器管理软件。调度服务器软件包括二开设备模块、数据库模块、外部接口模块、通用模块、空口模块、界面显示模块。二开设备模块主要负责调度服务器软件与二开设备的信息交互。数据库模块主要负责调度服务器软件与数据库的读写交互。外部接口模块主要负责调度服务器软件与外部接口设备的信息交互。通用模块主要负责调度服务器软件中通用的定义与通用方法等。空口模块主要负责调度服务器软件与无线服务器进行交互,借助无线服务器完成与移动车载终端的短信通信。界面显示模块主要负责调度服务器软件的界面显示以及人机交互。
调度服务器管理软件包括二开设备模块、评判模块、监控模块、通用模块、数据库模块。二开设备被模块主要负责调度服务器管理软件与二开设备模块的信息交互。评判模块主要负责调度服务器管理软件对调度服务器状态的判断以及主备的划分。监控模块主要负责调度服务器管理软件对调度服务器运行状态的监控。通用模块主要负责调度服务器管理软件中通用的定义与通用方法等。数据库模块主要负责调度服务器管理软件与数据库的读写交互。模块之间通信采用协议接口、委托调用、事件驱动等方式。
发明所产生的有益效果是:尽最大可能保持调度服务器的稳定性,不会因部分问题导致调度服务器系统不可用。同时在单个调度服务器不可用的时候,能够切换到另外一台调度服务器上,使调度服务器的功能正常行使,提高调度服务器系统的稳定性。
具体实施方式
以下结合附图对本发明作进一步说明。
如图1-图3所示,调度服务器软件程序模块包括二开设备模块、数据库模块、外部接口模块、通用模块、空口模块、界面显示模块。二开设备模块包括调度服务器管理软件模块、调度台模块、网管模块、全网录音模块、接口服务器模块。
调度服务器管理软件模块主要负责调度服务器软件与调度服务器管理软件的通信交互。调度台模块主要负责调度服务器软件与调度台设备的通信交互。网管模块主要负责调度服务器软件与网管设备的通信交互。全网录音模块主要负责调度服务器软件与全网录音设备的通信交互。接口服务器模块主要负责调度服务器软件与接口服务器设备的通信交互。
数据库模块包括SQLServer(一种数据库类型)数据库模块。SQLServer数据库模块主要负责调度服务器软件与SQLServer数据库按照SQLServer数据库的SQL语法进行读写交互,完成调度服务器软件数据的读取、修改与存储。
外部接口模块包括ATS模块、时钟模块。ATS模块主要负责调度服务器软件与ATS设备的通信交互,获取列车位置信息。ATS模块包括具体ATS模块,主要负责调度服务器软件按照指定厂家的ATS协议、通信方式与ATS设备进行通信交互,获取列车位置信息。时钟模块主要负责调度服务器软件与时钟设备进行交互。时钟模块包括具体时钟模块,主要负责调度服务器软件与时钟设备按照时钟设备厂家指定的协议、通信方式进行通信交互。
通用模块包括日志模块、通用方法、二开协议、配置文件。日志模块主要负责调度服务器软件运行中信息数据、告警数据、错误数据、异常数据的存储,将其存储在调度服务器存储介质的指定位置。通用方法主要负责调度服务器软件中的公用方法,比如协议转换、字节转换、类型转换等公用方法。二开协议主要负责将调度服务器软件与二开设备进行通信交互所用到的各种协议转换为指定的形式,简化通信交互流程,提高通信效率。配置文件主要负责调度服务器软件运行中各种配置信息的存储与预定义。
空口模块包括SDR(一种无线设备厂家提供的无线服务器设备)模块、TCS(一种无线设备厂家提供的无线服务器设备)模块、LTE(一种无线设备厂家提供的无线服务器设备)模块。SDR模块主要负责调度服务器软件与SDR服务器按照无线设备厂家提供的接口进行数据信息交互。TCS模块主要负责调度服务器软件与TCS服务器按照无线设备厂家提供的接口进行数据信息交互。LTE模块主要负责调度服务器软件与LTE服务器按照无线设备厂家提供的接口进行数据信息交互。
界面显示模块包括二开设备连接状态、列车位置显示、接口连接状态。二开设备连接状态主要负责调度服务器软件将二开设备的连接状态显示到界面上,给用户显示当前调度服务器软件已连接的二开设备。列车位置显示主要负责调度服务器软件将从ATS信号设备获取到的列车位置信息显示到界面上,给用户显示当前列车的运行位置。接口连接状态主要负责调度服务器软件与无线服务器、ATS信号设备、时钟设备的连接状态显示到界面上,给用户显示当前调度服务器软件与无线服务器、ATS信号设备、时钟设备的连接状态。
如图4-图6所示,调度服务器管理软件包括二开设备模块、评判模块、监控模块、通用模块、数据库模块。二开设备模块包括调度服务器客户端模块、调度服务器服务端模块、调度服务器软件服务端模块。调度服务器客户端模块主要负责调度服务器管理软件与调度服务器采用TCP(一种网络协议)协议,以客户端的方式进行数据与业务的交互。调度服务器服务端模块主要负责调度服务器管理软件与调度服务器采用TCP(一种网络协议)协议,以服务端的方式进行数据与业务的交互。
调度服务器软件服务端模块主要负责调度服务器管理软件与调度服务器软件采用TCP(一种网络协议)协议,以服务端的方式进行数据与业务的交互。
评判模块包括主备判断、主备切换。主备判断指的是调度服务器管理软件根据调度服务器的状态来判定当前调度服务器的主备状态。主备切换模块指的是调度服务器管理软件根据当前调度服务器的主备状态来对调度服务器进行主备的切换操作。
监控模块包括ATS监控、数据库监控、空口监控、调度服务器软件监控、调度服务器监控、监控启动通知。ATS监控指的是调度服务器管理软件ATS设备状态的监控,判断ATS设备状态是否处于正常状态。ATS监控包括ATS网口监控和ATS数据监控。ATS网口监控指的是调度服务器管理软件对ATS网口状态的监控,判断其ATS网口设备是否处于正常状态。ATS数据监控指的是调度服务器管理软件对ATS数据的监控,判断ATS数据数据格式、数据校验等是否正常。
数据库监控指的是调度服务器管理软件对数据库连接状态的监控,判断数据库驱动、数据库运行状态、数据库数据状态是否正常。空口监控指的是调度服务器管理软件对空口服务器状态的监控。空口监控包括空口网口监控和空口网关监控。空口网口监控指的是调度服务器管理软件对空口网口状态的监控,判断空口网口设备是否处于正常状态。空口网关监控指的是调度服务器管理软件对空口网关状态的监控,判断调度服务器管理软件到空口网关的链路是否处于正常状态。
调度服务器软件监控指的是调度服务器管理软件对调度服务器软件状态的监控,判断调度服务器软件是否运行以及调度服务器软件界面是否有响应。调度服务器监控指的是调度服务器管理软件与调度服务器的链路是否处于正常状态。监控启动通知指的是调度服务器管理软件通知ATS网口监控、ATS数据监控、数据库监控、空口网口监控、空口网关监控、调度服务器软件监控、调度服务器监控等进行相应的检测,判断其要检测的状态是否正常。
如图7所示,调度服务器的监控流程图。监控模块对调度服务器监控程序执行以下操作:开始,等待监控指令,接收到监控指令,然后判断是否接收到程序退出指令,若接收到程序退出指令,程序结束;若未接收到程序退出指令,则判断当前调度服务器是否为要检测的调度服务器,如果是,则返回继续等待监控指令;如果不是,接下来判断要检测的调度服务器是否可以Ping通其对应的P地址,如果是, Ping要检测的调度服务器的IP地址不通次数归零,然后返回继续等待监控指令;如果不是,Ping要检测的调度服务器的IP地址不通次数加1。
如图8所示,ATS网口监控流程图。ATS网口监控程序执行以下操作:开始,判断要检测的要检测的ATS是否启用,若未启用,则程序结束;若可用,接下来判断要检测的ATS网口是否可用,若不可用,要检测的ATS网口不可用次数加1,若可用,要检测的ATS网口不可用次数归零,程序结束。
如图9所示,ATS数据监控流程图。ATS数据监控程序执行以下操作:开始,判断ATS数据是否正常,若ATS数据不正常,ATS数据不正常时间加1,若ATS数据正常,ATS数据不正常时间归零,程序结束。
如图10所示,调度服务器软件监控流程图。调度服务器软件监控程序执行以下操作:开始,判断当前调度服务器软件进程是否存在,若调度服务器软件进程不存在,启动当前调度服务器软件进程,当前调度服务器软件进程异常次数加1;若调度服务器软件进程存在,程序结束。
如图11所示,空口网口监控流程图。空口网口监控程序执行以下操作:开始,判断空口网口是否可用,若空口网口不可用,空口网口不可用时间加1;若空口网口可用,空口网口不可用时间归零,程序结束。
如图12所示,空口网关监控流程图。空口网关监控程序执行以下操作:开始,判断空口网关对应的IP是否可以Ping通,若空口网关对应的IP不可以Ping通,空口网关对应的IP不可以Ping通时间加1;若空口网关对应的IP可以Ping通,空口网关对应的IP不可以Ping通时间归零,程序结束。
如图13所示,数据库监控流程图。数据库监控程序执行以下操作:开始,判断数据库是否可用,若数据库不可用,数据库不可用次数加1;若数据库可用,数据库不可用次数归零,程序结束。
如图14所示,主备判定流程图。主备判定程序执行以下操作:开始,评判调度服务器软件进程状态,判断调度服务器软件进程状态是否正常,若调度服务器软件进程状态正常,接下来评判调度服务器状态,判断调度服务器状态是否正常,若调度服务器状态正常,接下来评判ATS网口状态,判断ATS网口状态是否正常,若ATS网口状态正常,接下来评判数据库状态,判断数据库状态是否正常,若数据库状态正常,评判空口网口状态,判断空口网口状态是否正常,若空口网口状态正常,评判空口网关状态,判断空口网关状态是否正常,若空口网关状态正常,评判ATS数据状态,判断ATS数据状态是否正常,若ATS数据状态正常,程序结束;否则调度服务器软件进程状态、调度服务器状态、ATS网口状态、数据库状态、空口网口状态、空口网关状态、ATS数据状态的评判均进入主备判定。
如图15所示,主要介绍调度服务器与信号系统、时钟系统、接口服务器、调度台、无线服务器的业务交互。与信号系统:获取列车信息。与时钟系统:获取时间信息。与接口服务器进行通信、握手、时钟申请、列车申请、列车位置、电台状态、动态重组、遥毙遥活、调度服务器状态通知。与调度台进行通信:握手、时钟申请、列车申请、列车位置、电台状态、手动转组、呼叫建立、广播呼叫、呼叫申请、预置短信、调度命令、调度服务器状态通知。与无线服务器通信:短信、心跳信息、注册信息。
如图16所示,主要介绍调度服务器与网管、全网录音、机车台、固定台的业务交互。与网管进行通信:握手、时钟申请、列车申请、列车位置、电台状态、二开连接状态、动态重组、遥毙遥活、调度服务器状态通知、电台告警。与全网录音进行通信:握手、时钟申请、告警。与机车台进行通信:握手、时钟申请、位置校核、预置短信、调度命令、呼叫申请、广播呼叫、列车位置、手动转组、告警信息。与固定台进行通信:握手、时钟申请、预置短信、告警信息。