[发明专利]实时系统更新方法及装置有效
申请号: | 201410814503.2 | 申请日: | 2014-12-23 |
公开(公告)号: | CN104536784B | 公开(公告)日: | 2018-02-23 |
发明(设计)人: | 马燕龙 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65;G06F8/71 |
代理公司: | 北京康信知识产权代理有限责任公司11240 | 代理人: | 李志刚,吴贵明 |
地址: | 100086 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 实时 系统 更新 方法 装置 | ||
技术领域
本发明涉及数据处理领域,具体而言,涉及一种实时系统更新方法及装置。
背景技术
实时系统用于数据的实时处理,满足用户实时查看数据的需求。如图1所示的实时系统的架构的逻辑示意图中包含了多个不同功能的节点,其中,请求转发节点用于将请求转发到计算节点,计算节点用于将请求进行解析,并将解析得到的数据进行聚合,中心节点用于保存聚合后的数据,查询节点用于从中心节点查询保存后的数据,其中,每个节点包含多个实例,例如,实例1、实例2和实例3,实例可以是节点的进程。上述实施系统中的每个实例发送数据的目标地址都是在配置文件中配置的,比如请求转发节点实例需要配置所有计算节点实例的地址列表,计算节点实例需要配置所有中心节点实例的地址列表,在每个节点启动的时候读取配置文件中配置的目标地址列表,数据被发送到每个目标地址对应的实例中。一旦实例启动之后,再修改配置文件将不起作用,例如,在配置文件中新添加一个目标地址,此时数据并不会发送给这个新加的目标地址。此外,上述实施系统的每个节点都有对应的守护进程,该守护进程一方面用于在配置文件中配置需要启动的实例,在守护进程启动后根据配置文件中的配置启动实例;另一方面该守护进程用于监控正在运行的实例,当实例停止运行时重新启动实例。
上述实时系统主要存在如下两个问题,一是在每次进行系统升级时,必须停掉整个实时系统,升级完毕后,再重新启动实时系统。例如,对计算节点进行升级,此时如果仅停掉实时系统中的计算节点进行升级,将会导致向计算节点发送数据失败,从而使得向计算节点发送的数据丢失。因此,在实时系统升级期间,必须停掉整个实时系统,在升级期间的数据将全部丢失,做不到无缝更新。二是线上环境运行时,如果发现某个节点性能瓶颈,需要在配置文件中添加新实例,此时同样需要停掉整个系统后再重新启动实时系统,这样新实例才会起作用,这个过程同样存在数据丢失的问题。
针对相关技术中实时系统更新时存在数据丢失的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种实时系统更新方法及装置,以解决相关技术中实时系统更新时存在数据丢失的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种实时系统更新方法。
实时系统包括第一节点和第二节点,第一节点用于向第二节点发送数据,第一节点和第二节点均包含多个实例,根据本发明的实时系统更新方法包括:检测第一节点的配置文件是否发生更新,其中,第一节点的配置文件中配置有第一节点的实例发送数据的目标地址,目标地址为第二节点的实例的地址;在检测到配置文件发生更新时,加载更新后的配置文件;以及第一节点根据更新后的配置文件向第二节点的实例发送数据。
进一步地,检测第一节点的配置文件是否发生更新包括:检测第一节点的配置文件是否发生修改;如果检测出第一节点的配置文件发生修改,则确定第一节点的配置文件发生更新;以及如果检测出第一节点的配置文件未发生修改,则确定第一节点的配置文件未发生更新。
进一步地,实时系统还包括第三节点,第三节点用于存储实时系统中的实例相关的数据,该方法还包括:通过第一节点的第一实例调用第三节点的第一预设操作,其中,第一实例是指第一节点的多个实例中处于运行状态的实例,第一预设操作用于存储数据至第三节点中;以及通过执行第一预设操作将第一实例相关的数据存储至第三节点中。
进一步地,通过执行第一预设操作存储第一实例相关的数据至第三节点中包括:判断第一实例的编号是否存在于预设字典中,其中,预设字典用于存储实时系统的实例相关的数据,预设字典包含标识列和属性值列,标识列用于存储实例的编号,属性值列用于存储实例相关的数据;如果判断出第一实例的编号存在于预设字典中,将第一实例相关的数据存储于预设字典中第一实例的编号对应的属性值列中;以及如果判断出第一实例的编号不存在于预设字典中,在预设字典中添加第一实例的编号,并将第一实例相关的数据存储于预设字典中第一实例的编号对应的属性值列中。
进一步地,在通过第一节点的第一实例调用第三节点的第一预设操作之后,该方法还包括:判断第一实例是否是第一次调用第一预设操作;如果判断出第一实例不是第一次调用第一预设操作;查找第一实例对应的存储文件;将第一实例相关的数据存储至对应的存储文件中;以及如果判断出第一实例是第一次调用第一预设操作,为第一实例创建对应的存储文件,并将第一实例相关的数据存储至对应的存储文件中。
为了实现上述目的,根据本发明的另一方面,提供了一种实时系统更新装置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410814503.2/2.html,转载请声明来源钻瓜专利网。