一种可配置插件式的数据服务方法

文档序号:6520650阅读:408来源:国知局
一种可配置插件式的数据服务方法
【专利摘要】本发明涉及一种可配置插件式的数据服务方法,其特征在于包括如下步骤:步骤S01:对采集服务的数据服务进行配置,每个数据服务都以所述配置项进行区分、初始化;步骤S02:实例化数据服务,并以独立线程运行数据服务;步骤S03:在服务的主进程上,通过时间片轮值方式和事件的监控方式,来跟踪、监控每个业务数据服务线程的运行状态;包括如下步骤:步骤S031:在时间片轮值上,通过遍历线程,并判断每个线程上的线程状态,一旦有出现非正常的状态就进行登记日志,并尝试重新启动该服务线程;步骤S032:绑定线程的运行事件机制,当线程触发运行事件也登记日志,并进行对应事件的操作;步骤S04:上报服务运行日志,实现服务监控告警。
【专利说明】一种可配置插件式的数据服务方法
【技术领域】
[0001]本发明涉及水利、防汛、水文、气象、海洋、国土等相关防灾减灾行业信息化【技术领域】,特别是一种可配置插件式的防灾数据服务方法。
【背景技术】
[0002]当前,针对防灾减灾行业相关的数据汇集服务,通常是在系统建设时,业务需要哪种数据,就建立一个对应的数据采集程序或服务,对数据进行采集。伴随着业务所要的数据在不断增加,防汛常用的有水雨情数据、台风数据、卫星云图、雷达图等数据,海洋有上百类的数据需要采集的,采集程序也随之不断增加,往往一台服务器上会有很多种不同种类的数据采集程序,给我们的管理人员在日常的管理工作上增加了不少工作量。
[0003]现有的一种业务数据对应一个数据采集程序的方式,对服务器的资源占用很大,往往会因为采集服务运行过多,而影响到系统的运行稳定性。日常管理起来也非常不方便,一旦人员发生变化或服务器硬件环境发生变化,都给整个数据采集的正常运行带来了很大的变数。

【发明内容】

[0004]有鉴于此,本发明的目的是提供一种可配置插件式的数据服务方法,针对采集的程序及服务进行可配置的集中管理,并监控各个采集服务,保障采集服务的正常稳定运行。
[0005]本发明采用以下方案实现:一种可配置插件式的数据服务方法,其特征在于包括如下步骤:
步骤SOl:对采集服务的数据服务进行配置,每个数据服务都以所述配置项进行区分、初始化;
步骤S02:实例化数据服务,并以独立线程运行数据服务;
步骤S03:在服务的主进程上,通过时间片轮值方式和事件的监控方式,来跟踪、监控每个业务数据服务线程的运行状态;包括如下步骤:
步骤S031:在时间片轮值上,通过遍历线程,并判断每个线程上的线程状态,一旦有出现非正常的状态就进行登记日志,并尝试重新启动该服务线程;
步骤S032:绑定线程的运行事件机制,当线程触发运行事件也登记日志,并进行对应事件的操作;
步骤S04:上报服务运行日志,实现服务监控告警。
[0006]在本发明一实施例中,所述步骤SOl中所述配置的实现方式是通过对需要采集的服务进行XML配置,实现在数据主进程启动时,能按照配置的内容进行初始化各个数据服务;其中服务配置项如下:
ID=服务ID ;
NAME=服务名;
ServiceID=服务插件线程ID; AutoRun=是否自动运行;
ServiceAssembly=服务插件类库DLL的文件名;
LogName=服务日志文件名;
RunBase=服务启动方法。
[0007]在本发明一实施例中,所述步骤S02的实现方式:当主进程启动时,通过加载服务配置项的方式加载服务;通过MainAssembly=System.Reflection.Assembly.LoadFile (ServiceAssembly)的方式,加载服务需要运行的DLL库,并通过MainAssembly.CreateInstance的方式,创建独立的线程运行加载的数据服务;每个数据服务有不同的启动方法,可通过RunBase里的配置内容加载启动方法,使之可以正常运行。
[0008]在本发明一实施例中,所述步骤S04的实现方式:当服务线程出现故障时,登记运行日志,并将异常的信息定期通过远程访问的方式,传输至中心的服务器上,通过中心的服务器了解到每台服务器上运行数据服务的情况,当有故障发生时,进行在中心本地进行声音告警,提醒值班人员进行注意。
[0009]本发明方法适用于防灾减灾行业信息服务,可通过对不同服务器上所采集的不同业务数据进行服务配置化。通过一个主服务,多个子业务数据服务的模式,对数据服务进行统一管理,并支持未来业务数据的可扩展,通过该方法解决了多采集程序的管理困扰,数据服务不稳定等诸多问题,把日常的数据服务管理工作更科学化、简便化。
【专利附图】

【附图说明】
[0010]图1是本发明方法流程不意图。
【具体实施方式】
[0011]下面结合附图及实施例对本发明做进一步说明。
[0012]如图1所示,一种可配置插件式的数据服务方法,其特征在于包括如下步骤:
步骤SOl:对采集服务的数据服务进行配置,每个数据服务都以所述配置项进行区分、
初始化;
步骤S02:实例化数据服务,并以独立线程运行数据服务;
步骤S03:在服务的主进程上,通过时间片轮值方式和事件的监控方式,来跟踪、监控每个业务数据服务线程的运行状态;包括如下步骤:
步骤S031:在时间片轮值上,通过遍历线程,并判断每个线程上的线程状态,一旦有出现非正常的状态就进行登记日志,并尝试重新启动该服务线程;
步骤S032:绑定线程的运行事件机制,当线程触发运行事件也登记日志,并进行对应事件的操作;
步骤S04:上报服务运行日志,实现服务监控告警。
[0013]具体的,本实施例的实现步骤如下:
1、对采集服务的数据服务进行配置
通过对需要采集的服务进行XML配置,实现在数据主进程启动时,可以按照配置的内容进行初始化各个数据服务。服务配置项如下:
ID=服务ID ; NAME=服务名;
ServiceID=服务插件线程ID;
AutoRun=是否自动运行;
ServiceAssembly=服务插件类库DLL的文件名;
LogName=服务日志文件名;
RunBase=服务启动方法;
每个数据服务都由以上的采集配置项进行区分、初始化,后期有新增新的业务数据服务时,可直接在配置项中新增该数据服务信息即可。
[0014]2、实例化数据服务,并以独立线程运行数据服务
当主进程启动时,通过加载服务配置项的方式加载服务。通过MainAssembly=System.Reflection.Assembly.LoadFile (ServiceAssembly)的方式(其中该 System.Reflection.Assembly.LoadFile为微软.NET框架的进程操作类库),加载服务需要运行的DLL库,并通过 MainAssembly.CreateInstance 的方式(其中,该 MainAssembly.CreateInstance 为微软.NET框架的进程操作类库),创建独立的线程运行加载的数据服务。每个数据服务有不同的启动方法,可通过RunBase里的配置内容加载启动方法,使之可以正常运行。
[0015]3、通过服务主进程跟踪、监控各服务线程运行状态
在服务的主进程上,通过时间片轮值方式和事件的监控方式,来跟踪、监控每个业务数据服务线程的运行状态。首先,在时间片轮值上,通过遍历线程,并判断每个线程上的线程状态,一旦有出现非正常的状态就进行登记日志,并尝试重新启动该服务线程。其次,绑定线程的运行事件机制,当线程触发运行事件也登记日志,并进行对应事件的操作。
[0016]4、上报服务运行日志,实现服务监控告警
当服务线程出现故障时,登记运行日志,并将异常的信息定期通过远程访问的方式,传输至中心的服务器上,通过中心的服务器可以了解到每台服务器上运行数据服务的情况,当有故障发生时,可以进行在中心本地进行声音告警,提醒值班人员进行注意。
[0017]以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
【权利要求】
1.一种可配置插件式的数据服务方法,其特征在于包括如下步骤: 步骤SOl:对采集服务的数据服务进行配置,每个数据服务都以所述配置项进行区分、初始化; 步骤S02:实例化数据服务,并以独立线程运行数据服务; 步骤S03:在服务的主进程上,通过时间片轮值方式和事件的监控方式,来跟踪、监控每个业务数据服务线程的运行状态;包括如下步骤: 步骤S031:在时间片轮值上,通过遍历线程,并判断每个线程上的线程状态,一旦有出现非正常的状态就进行登记日志,并尝试重新启动该服务线程; 步骤S032:绑定线程的运行事件机制,当线程触发运行事件也登记日志,并进行对应事件的操作; 步骤S04:上报服务运行日志,实现服务监控告警。
2.根据权利要求1所述的一种可配置插件式的数据服务方法,其特征在于:所述步骤SOl中所述配置的实现方式是通过对需要采集的服务进行XML配置,实现在数据主进程启动时,能按照配置的内容进行初始化各个数据服务;其中服务配置项如下: ID=服务ID ; NAME=服务名; ServiceID=服务插件线程ID; AutoRun=是否自动运行; ServiceAssembly=服务插件类库DLL的文件名; LogName=服务日志文件名; RunBase=服务启动方法。
3.根据权利要求1所述的一种可配置插件式的数据服务方法,其特征在于:所述步骤S02的实现方式:当主进程启动时,通过加载服务配置项的方式加载服务;通过MainAssembly=System.Reflection.Assembly.LoadFile (ServiceAssembly)的方式,力口载服务需要运行的DLL库,并通过MainAssembly.CreateInstance的方式,仓Il建独立的线程运行加载的数据服务;每个数据服务有不同的启动方法,可通过RunBase里的配置内容加载启动方法,使之可以正常运行。
4.根据权利要求1所述的一种可配置插件式的数据服务方法,其特征在于:所述步骤S04的实现方式:当服务线程出现故障时,登记运行日志,并将异常的信息定期通过远程访问的方式,传输至中心的服务器上,通过中心的服务器了解到每台服务器上运行数据服务的情况,当有故障发生时,进行在中心本地进行声音告警,提醒值班人员进行注意。
【文档编号】G06Q50/26GK103632331SQ201310606355
【公开日】2014年3月12日 申请日期:2013年11月26日 优先权日:2013年11月26日
【发明者】洪水洁, 黄敏 申请人:福建四创软件有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1