一种基于微服务的卫星地面站监控系统的制作方法

文档序号:24297665发布日期:2021-03-17 00:48阅读:106来源:国知局
一种基于微服务的卫星地面站监控系统的制作方法

本发明涉及遥感卫星监控技术领域,具体来说,涉及一种基于微服务的卫星地面站监控系统。



背景技术:

遥感卫星地面系统是卫星工程中的卫星、运载、发射、测控、地面应用五大系统之一,遥感卫星地面站是遥感卫星地面系统的重要组成部分,主要负责接收星上载荷所获取数据,并进行处理、分发。随着我国航天事业的发展及卫星遥感数据应用的推广,在轨的遥感卫星数量日益增多,同一时刻多颗卫星过境的情况出现的越来越频繁,对遥感卫星地面站的数据接收能力提出了更高要求,需要提高地面站同时接收多颗卫星数据的能力。传统的地面应用系统已经无法满足未来发展的需要,同时技术人员在系统升级和维护时,也耗费巨大的精力,亟待推出一种能够适应快速开发、迭代升级和灵活部署要求的技术途径。

近年来微服务框架被广泛使用,通常地,一个大型的、单体的、复杂的地面应用系统,按照业务功能或者独立性原则进行组件化、服务化分离,能够拆分成一系列微小的应用服务。在此类微服务架构中,每一个微服务只完成一个特定的功能,服务间通过服务发现的方式相互通信,当需要增加某些功能时,只需要在特定的服务中增加相应的功能即可。此外,基于微服务的服务间独立性较好,开发语言比较灵活,不同的服务可以采用不同的编程语言来实现,具备更高的敏捷性、灵活性、以及可扩展性。



技术实现要素:

针对遥感卫星地面监控领域的问题以及微服务的技术特点,本发明提出一种基于微服务的卫星地面站监控系统,能够解决资源动态弹性扩展差的问题,以及提高卫星地面站监控系统的迭代升级和灵活部署能力。

为实现上述技术目的,本发明的技术方案是这样实现的:一种基于微服务的卫星地面站监控系统,该系统包括:资源模块、服务模块、通信模块及应用模块;

所述的资源模块用于提供服务模块、通信模块和应用模块的运行环境,所述资源模块包含任务数据库、监控数据库、轨道数据库和基本数据库;

所述服务模块用于获取所述资源模块的基础配置信息,以及卫星轨道数据,并通过所述通信模块与外部系统进行任务调度处理,以及卫星的进出站计算和跟踪点位计算,所述服务模块包含服务管理中心,所述服务管理中心用于完成微服务的注册、管理和监控,并通过所述通信模块为所述应用模块提供任务管理、故障诊断及值班统计,其中,所述微服务组进一步包含:实时通信微服务组、文件通信微服务组、任务调度微服务组、设备监控微服务组、轨道微服务组、故障处理微服务组、页面展示微服务组;

所述通信模块用于向外部系统提供统一访问服务和资源负载均衡协调及数据转发;

所述应用模块用于接收用户需求的指令,通过所述通信模块向所述服务模块发送需求信号,所述服务模块根据需求信号向用户返回相应微服务组提供的服务结果。

根据本发明的另一方面,所述实时通信微服务组用于与外部的网络实时通信,以及采用socketnio方式、串口通信方式、snmp通信方式和web通信方式,实现与系统中不同类型、不同品牌、不同型号、不同通信协议的设备之间的通信。

根据本发明的另一方面,所述文件通信微服务组用于实时扫描不同格式的文件,接收外部系统发送的接收计划、卫星根数文件、测试计划任务文件,经格式校验后,转化为系统内部识别的元数据。

根据本发明的另一方面,所述任务调度微服务组用于进行任务冲突检测、任务处理和任务执行调度的处理。

根据本发明的另一方面,所述设备监控微服务组用于状态采集、设备控制、设备状态发布和宏参数下发管理。

根据本发明的另一方面,所述轨道微服务组用于卫星轨道根数的接收和管理,卫星的进出站时间计算、卫星过境期间的天线引导文件计算。

根据本发明的另一方面,所述故障处理微服务组用于进行故障识别、故障报警和故障处理,其中,所述故障报警包含数字量报警、模拟量报警、多数字量报警、时间戳报警和高级报警,所述故障处理是基于报警分类,将有相似特征的报警标签放到一个报警分类中,给报警标签设定相同的显示特征,以及根据报警类型配置相应的报警处理方式,所述报警处理方式包含界面报警、声光报警、短信报警和语音报警。

根据本发明的另一方面,所述页面展示微服务组用于提供页面展示,为地面站值班用户提供地面站设备状态实时监视,卫星接收任务执行状况,以及系统各参数配置界面。

根据本发明的另一方面,所述通信模块包含组合服务请求路由、协议转换、api接口网关,其中,所述api接口网关接收到http协议请求时,判断该请求是否为登录用户验证请求。

根据本发明的另一方面,所述的判断该请求是否为登录用户的验证请求,若是则直接解析请求url,并转发请求到所述服务模块验证,若验证通过,则生成token令牌,并保存到系统缓存中,然后将token令牌添加到响应头部返回,若验证未通过,则返回401禁止访问错误;

若api接口网关判断该请求不是登录用户验证请求,则对请求头部携带的token令牌进行验证,若验证不通过,则返回403未经授权的错误,若验证通过,则解析请求的url地址,api接口网关在所述服务管理中心中查找相应服务的ip地址和端口号,若找到相应的服务信息,则使用查找到的ip地址和端口号,以及将请求转发到服务模块对应的服务中进行处理,否则,返回404文件找不到错误。

本发明的有益效果:鉴于现有技术中存在的不足,本申请具有如下有益效果:

1)本申请将微服务架构方式应用到卫星地面站监控系统中,将传统的系统功能模块抽象化,并封装为微服务;

2)将功能类似相关的微服务,封装为微服务组,微服务组包含:实时通信微服务组、文件通信微服务组、任务调度微服务组、设备监控微服务组、轨道微服务组、故障处理微服务组、页面展示微服务组;

3)本申请中的api接口网关负责服务请求路由、组合及协议转换;

4)本申请中的每个服务之间配置拥有不同的开发环境,开发速度快,部署简单,能够加快产品上线的速度,具有较好的扩展性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例所述的基于微服务的卫星地面站监控系统的框架示意图;

图2是根据本发明实施例所述的基于微服务的卫星地面站监控系统的微服务组示意图;

图3是根据本发明实施例所述的基于微服务的卫星地面站监控系统的接口网关工作流程示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

如图1-3所示,根据本发明实施例所述的基于微服务的卫星地面站监控系统,该系统包括:资源模块、服务模块、通信模块及应用模块;

在本发明的一个具体实施例中,

所述的资源模块用于提供服务模块、通信模块和应用模块的运行环境,所述资源模块包含任务数据库、监控数据库、轨道数据库和基本数据库。

在本发明的一个具体实施例中,

所述服务模块用于获取所述资源模块的基础配置信息,以及卫星轨道数据,并通过所述通信模块与外部系统进行任务调度处理,以及卫星的进出站计算和跟踪点位计算,实现任务管理的功能、设备状态监视、故障报警的功能、以及卫星轨道计算服务的功能,所述服务模块包含服务管理中心,所述服务管理中心用于完成微服务的注册、管理和监控,并通过所述通信模块为所述应用模块提供任务管理、故障诊断及值班统计应用,其中,所述微服务组进一步包含:实时通信微服务组、文件通信微服务组、任务调度微服务组、设备监控微服务组、轨道微服务组、故障处理微服务组、页面展示微服务组,其用于:

所述实时通信微服务组用于与外部的网络实时通信,以及采用socketnio方式、串口通信方式、snmp通信方式和web通信方式,实现与系统中不同类型、不同品牌、不同型号、不同通信协议的设备之间的通信,为设备监控微服务组提供通信,所述通信包含:数据的采集、协议的解析、数据帧格式的校验和加解密,并使用redis非关系型数据库存储数据,同时对外提供rest(representationalstatetransfer,表述性状态传递)接口,供其他微服务组使用;

所述文件通信微服务组用于实时扫描不同格式的文件,接收外部系统发送的接收计划、卫星根数文件、测试计划任务文件,经格式校验后,转化为系统内部识别的元数据,同时为任务调度微服务组提供文件生成、文件处理和文件发送的接口,实现系统内外部的文件交互;

所述任务调度微服务组用于进行任务冲突检测、任务处理和任务执行调度的处理,所述任务冲突检测根据文件通信微服务组提供的元数据,对卫星接收和测控的任务计划和测试计划依赖的资源进行判断,判断计划执行时需要的天线、信道、记录、基带资源是否存在使用时间冲突,只有不存在冲突的计划才能够进入任务处理和任务执行调度;所述任务处理用于任务计划和测试计划分解参数,匹配到天线、信道、记录和基带资源,并且存储到资源模块数据库中,供任务执行调度使用;所述任务执行调度用于组织任务的实施,能够自动调用轨道微服务组的引导文件计算服务,调用设备监控微服务组的宏参数下发管理服务文件,以及调用文件通信微服务组的文件发送服务,同时实时监视任务的状态,记录任务的状态信息;

所述设备监控微服务组用于状态采集、设备控制、设备状态发布和宏参数下发管理,所述状态采集基于设备参数模型,借助实时通信微服务组提供的通信,完成对天线设备、信道变频器设备、开关设备、基带设备的实时状态采集、工程值的量化转换、阈值的判断以及设备状态故障的识别;所述设备控制通过实时通信完成对设备的参数控制;所述设备状态发布通过restful接口对外提供设备状态查询和控制的api(applicationprogramminginterface,应用程序接口),宏参数下发管理为向用户提供一组设备工作参数的管理,及参数的下发控制;

所述轨道微服务组用于卫星轨道根数的接收和管理,卫星的进出站时间计算、卫星过境期间的天线引导文件计算。

所述故障处理微服务组用于进行故障识别、故障报警和故障处理,其中,所述故障报警包含数字量报警、模拟量报警、多数字量报警、时间戳报警和高级报警,所述故障处理是基于报警分类,将有相似特征的报警标签放到一个报警分类中,给报警标签设定相同的显示特征,以及根据报警类型配置相应的报警处理方式,所述报警处理方式包含界面报警、声光报警、短信报警和语音报警。

所述页面展示微服务组用于提供页面展示,为地面站值班用户提供地面站设备状态实时监视,卫星接收任务执行状况,以及系统各参数配置界面。

在本发明的一个具体实施例中,所述通信模块用于向外部系统提供统一访问服务和资源负载均衡协调及数据转发;

在本发明的一个具体实施例中,所述应用模块用于接收用户需求的指令,通过所述通信模块向所述服务模块发送需求信号,所述服务模块根据需求信号向用户返回相应微服务组提供的服务结果,所述通信模块包含组合服务请求路由、协议转换、api接口网关,其中,所述api接口网关接收到http协议(hypertexttransferprotocol,超文本传输协议)请求时,判断该请求是否为登录用户的验证请求,若是则直接解析请求url,并转发请求到所述服务模块验证,若验证通过,则生成token令牌,并保存到系统缓存中,然后将token令牌添加到响应头部返回,若验证未通过,则返回401禁止访问错误;

若api接口网关判断该请求不是登录用户验证请求,则对请求头部携带的token令牌进行验证,若验证不通过,则返回403未经授权的错误,若验证通过,则解析请求的url地址,api接口网关在所述服务管理中心中查找相应服务的ip地址和端口号,若找到相应的服务信息,则使用查找到的ip地址和端口号,以及将请求转发到服务模块对应的服务中进行处理,否则,返回404文件找不到错误。

为了方便理解本发明的上述技术方案,以下通过具体使用方式对本发明的上述技术方案进行详细说明。

在具体使用时,根据本发明所述的基于微服务的卫星地面站监控系统,首先,本系统包括:资源模块、服务模块、通信模块及应用模块;如图1所示:

所述资源模块是本系统的基础支撑层,提供系统运行所需的全部操作系统资源和环境,包含计算资源、存储资源和服务运行环境等,实现对资源的充分利用,实现外部资源的资源抽象控制层,以及资源调用的透明化,所述资源模块中包含任务数据库、监控数据库、轨道数据库、基本数据库,其中,所述任务数据库用于存储卫星测控接收任务信息以及执行情况,为服务模块提供数据支撑;所述监控数据库用于存储地面站设备属性,设备状态参数,宏参数;所述轨道数据库用于存储卫星轨道参数,卫星星下点信息,卫星过境时间;所述基本数据库用于存储用户信息、日志信息、故障信息、微服务配置信息;

所述服务模块主要完成系统业务所需的基础服务api接口网关组件封装,为应用服务提供服务组件支撑,服务模块对各个业务功能进行模块化管理,服务模块中包含服务通信模块、服务管理中心、实时通信微服务组、任务调度微服务组、轨道微服务组、文件通信微服务组、设备监控微服务组、故障处理微服务组、页面展示微服务组,其中:

所述服务通信模块提供不同微服务之间的服务通信,包含ftp(filetransferprotocol,文件传输协议)协议、mq(messagequeue,消息队列)消息队列协议、rpc(remoteprocedurecall,远程过程调用)远程调用协议、rest协议等;

所述服务管理中心能够对每个应用微服务进行集中式管理,提供新服务的注册发现、服务发布、服务配置管理以及服务动态管理功能;

所述实时通信微服务组提供系统与外部系统的通信服务;

所述任务调度微服务组将任务创建子模块、任务管理子模块、任务调度管理子模块封装为微服务;

所述轨道微服务组提供卫星轨道的管理,提供卫星进出站计算服务以及跟踪点位计算服务;

所述文件通信微服务组用于实时扫描外部发送的不同格式的文件经格式校验,转化元数据;

所述设备监控微服务组提供设备的参数状态监视、命令控制以及宏参数管理组下发功能;

所述故障处理微服务组用于进行故障识别、故障报警和故障处理;

所述页面展示微服务组为系统提供页面展示功能,为地面站值班用户提供地面站设备状态实时监视,卫星接收任务执行状况,以及系统各参数配置界面;

所述通信模块为外部提供统一访问服务端的负载均衡协调及数据转发功能;

所述应用模块提供应用,完成地面任务的创建和管理,设备的监控和实时报警,查看任务执行状态,完成系统配置管理、数据查询维护,统计地面站运行情况等功能。

如图2所示,一种基于微服务的卫星地面站监控系统中微服务的组成,将系统功能中相关的一组微服务,封装为微服务组,设计了实时通信微服务组,文件通信微服务组、任务调度微服务组、设备监控微服务组、轨道微服务组,故障处理微服务组、页面展示微服务组共7个微服务组,具体地:

所述实时通信微服务组主要完成网络实时通信的功能,采用socketnio技术、串口通信技术、snmp(simplenetworkmanagementprotocol,简单网络管理协议)通信和web通信技术完成系统中不同类型、不同品牌、不同型号、不同通信协议的设备之间的通信,包含数据的采集、协议的解析、数据帧格式的校验和加解密等功能,使用redis非关系型数据库存储数据,同时对外提供restful接口,供设备监控微服务组等其他微服务使用;

所述文件通信微服务组完成本系统内外部的文件交互服务,能够实时扫描不同格式的文件,接收外部系统发送的接收计划、卫星根数文件、测试计划任务文件,经严格格式校验后,转化为系统内部识别的元数据,同时能够为任务调度微服务组提供文件生成、文件处理和文件发送的接口服务;

所述任务调度微服务组包含任务冲突检测服务、任务处理服务、任务执行调度服务,所述任务冲突检测服务根据文件通信微服务提供的元数据,对卫星接收和测控的任务计划和测试计划依赖的资源进行判断,判断计划执行时需要的天线、信道、记录、基带资源是否存在使用时间冲突,只有不存在冲突的计划才能够进入任务处理和任务执行调度;所述任务处理服务对任务计划和测试计划分解参数,匹配到天线、信道、记录和基带资源,并且存储到资源模块数据库中,供任务执行调度使用;所述任务执行调度服务组织任务的实施,能够自动调用轨道服务模块的引导文件计算服务,调用设备监控微服务组的宏参数下发管服务,文件通信服务组的文件发送服务,同时实时监视任务的状态,记录任务的状态信息;

所述设备监控微服务组是本系统的核心服务,由状态采集服务、设备控制服务、设备状态发布服务、设备宏参数管理服务组成,所述状态采集服务能够基于设备参数模型,借助实时通信微服务组提供的通信服务,完成对天线设备、信道变频器设备、开关设备、基带设备的实时状态采集,工程值的量化转换,阈值的判断,设备状态故障的识别等;同样,所述设备控制服务能够调用实时通信服务,完成对设备的参数控制;所述设备宏参数管理服务能够为用户提供一组设备工作参数的管理,及参数的下发控制;所述设备状态发布服务能够通过restful接口,对外提供设备状态查询和控制的api,方便进行界面展示和扩展;

所述轨道微服务组能够完成卫星轨道根数的接收和管理服务、卫星的进出站时间计算服务、卫星过境期间的天线引导文件计算服务;

所述故障处理微服务组用于为本系统进行全方位的故障识别、故障报警和故障处理,其中,所述故障报警包含数字量报警、模拟量报警、多数字量报警、时间戳报警和高级报警,所述故障处理是基于报警分类,将有相似特征的报警标签放到一个报警分类中,给报警标签设定相同的显示特征,以及根据报警类型配置相应的报警处理方式,所述报警处理方式包含界面报警、声光报警、短信报警和语音报警;

所述页面展示微服务组为本系统提供页面展示功能,为地面站值班用户提供地面站设备状态实时监视,卫星接收任务执行状况,以及系统各参数配置界面。

如图3所示,接口网关工作流程:

api接口网关负责服务请求路由、组合及协议转换,客户端的所有请求都首先经过api接口网关,然后由api接口网关将请求路由到合适的微服务,在本文中,api接口网关主要有两个功能:1)用户的身份认证和鉴别;2)转发客户端http请求到对应的微服务中进行处理,其中:

api接口网关负责收到http请求时,首先会判断该请求是否为登录用户的验证请求,如果是,则直接解析请求url,并转发请求到服务模块验证;如果验证通过,则生成token令牌,并保存到系统缓存中,然后将token令牌添加到响应头部返回;如果验证未通过,则返回“401禁止访问错误”;

如果api接口网关判断该请求不是登录用户验证请求,如果是,则对请求头部携带的token令牌进行验证,如果验证不通过,则返回“403未经授权的错误”;如果验证通过,则解析请求的url地址,api接口网关在服务管理中心中查找相应服务的ip地址和端口号,如果找到相应的服务信息,则使用查找到的ip地址和端口号以及服务模块url将请求转发到服务模块对应服务中进行处理,否则,返回“404文件找不到错误”。

本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行图1所述的系统框架。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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