一种消息同步方法及装置的制造方法

文档序号:9931369阅读:342来源:国知局
一种消息同步方法及装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,尤其涉及一种消息同步方法及装置。
【背景技术】
[0002]随着面向服务的体系结构(Service-Oriented Architecture,S0A)理念和面向SOA分布式架构模型逐步引入业务运行支撑系统(Business support system,BSS)系统中,组网布局采用多机分布式,相同的应用需要部署多台主机上,且伴随业务量的增加,需要随时扩展增加新的应用,因此,需要保证所有应用配置的同步一致性和完整性。
[0003]现有技术中,在当前的BSS系统组网方案中,通常对同步信息采用集中管控,分布式缓存的网状式布局,即中心控制点通过采用轮询发送同步信息至每个主机的每个应用保证同步的一致性;每个应用将该同步信息进行缓存,在完成缓存后,向该中心控制点发送接收确认信息通知中心控制点;中心控制点通过确认接收到所有应用发送的接收确认信息来保证同步的完整性。
[0004]然而,在当前的方案中,若增加新的应用,则需要针对该新的应用开发对应的新的同步信息接收端,同时需要在中心控制点增加新的调用配置信息,便于中心控制点在轮询同步时,能够将同步信息发送到各个应用。因此,在新增应用时,增加了中心控制点的负载,限制了中心控制点的工作效率。
[0005]显然,采用现有的方式进行同步消息发送,完全依赖于中心控制点的主动推送,中心控制点的负载较高,工作效率降低。

【发明内容】

[0006]本发明实施例提供一种消息同步方法及装置,用以解决现有技术中存在的完全依赖中心控制点的主动推送完成消息同步,中心控制点的负载较高,工作效率降低的问题。
[0007]本发明实施例提供的具体技术方案如下:
[0008]第一方面,一种消息同步方法,包括:
[0009]同步节点接收同步控制节点发送的同步消息;
[0010]所述同步节点基于所述同步消息生成对应的消息操作命令和所述消息操作命令的命令标识,将所述消息操作命令和对应的命令标识保存至命令执行文件;
[0011]其中,所述命令执行文件用于所述同步节点对应的应用节点进行内存数据处理。
[0012]结合第一方面,在第一种可能的实现方式中,同步节点接收同步控制节点发送的同步消息,包括:
[0013]同步节点接收同步控制节点通过持久化消息总线Persist Message Bus发送的同步消息。
[0014]结合第一方面或第一方面的第一种可能的实现方式,在第二种可能的实现方式中,所述同步节点接收同步控制节点发送的同步消息后,还包括:
[0015]所述同步节点将所述同步消息持久化保存。
[0016]结合第一方面或第一方面的以上任一种可能的实现方式,在第三种可能的实现方式中,将所述消息操作命令和对应的命令标识保存至命令执行文件后,还包括:
[0017]向所述同步控制节点返回同步响应消息。
[0018]第二方面,一种消息同步方法,包括:
[0019]应用节点获取命令执行文件中的最新的消息操作命令对应的命令标识;
[0020]应用节点判断所述最新的消息操作命令对应的命令标识是否与本地缓存的命令标识不相同;并
[0021]确定所述最新的消息操作命令对应的命令标识与本地缓存的命令标识不相同时,获取所述最新的消息操作命令;
[0022]应用节点基于所述最新的消息操作命令对所述应用节点的内存进行数据处理。
[0023]结合第二方面,在第一种可能的实现方式中,所述应用节点获取命令执行文件中的最新的消息操作命令对应的命令标识,包括:
[0024]所述应用节点对所述命令执行文件进行监控;
[0025]在监控到最新的消息操作命令和对应的命令标识保存至所述命令执行文件中时,获取所述最新的消息操作命令对应的命令标识。
[0026]结合第二方面或第二方面的第一种可能的实现方式,在第二种可能的实现方式中,基于所述最新的消息操作命令对所述应用节点的内存进行数据处理,包括:
[0027]所述应用节点解析所述最新的消息操作命令,获取对应的数据处理指令;
[0028]根据所述数据处理指令从指定位置读取对应的数据,将读取的所述数据添加至所述应用节点的内存;或者将所述数据处理指令中携带的数据添加至所述应用节点的内存;或者根据所述数据处理指令,将所述应用节点的内存中的指定数据进行删除。
[0029]结合第二方面的或第二方面的以上任一种可能的实现方式,在第三种可能的实现方式中,基于所述最新的消息操作命令对所述应用节点的内存进行数据处理后,还包括:
[0030]所述应用节点使用所述最新的消息操作命令对应的命令标识对本地缓存的命令标识进行更新。
[0031]结合第二方面的或第二方面的以上任一种可能的实现方式,在第四种可能的实现方式中,还包括:
[0032]所述应用节点对自身的内存进行周期性检测,若检测结果为异常或所述应用节点重启时,则获取预设在所述应用节点中的对内存进行初始化的消息操作命令;
[0033]根据所述消息操作命令从指定位置读取数据对所述内存进行初始化;
[0034]使用所述消息操作命令对应的预设命令标识,对本地缓存的命令标识进行更新。
[0035]第三方面,一种消息同步装置,包括:
[0036]接收单元,用于接收同步控制节点发送的同步消息;
[0037]处理单元,用于基于所述同步消息生成对应的消息操作命令和所述消息操作命令的命令标识,将所述消息操作命令和对应的命令标识保存至命令执行文件;
[0038]其中,所述命令执行文件用于所述消息同步装置对应的应用节点进行内存数据处理。
[0039]结合第三方面,在第一种可能的实现方式中,所述接收单元具体用于:
[0040]接收同步控制节点通过持久化消息总线Persist Message Bus发送的同步消息。
[0041]结合第三方面或第三方面的第一种可能的实现方式,在第二种可能的实现方式中,所述接收单元在接收同步控制节点发送的同步消息后,还用于:
[0042]将所述同步消息持久化保存。
[0043]结合第三方面或第三方面的以上任一种可能的实现方式,在第三种可能的实现方式中,所述处理单元在将所述消息操作命令和对应的命令标识保存至命令执行文件后,还用于:
[0044]向所述同步控制节点返回同步响应消息。
[0045]第四方面,一种消息同步装置,包括:
[0046]获取单元,用于获取命令执行文件中的最新的消息操作命令对应的命令标识;
[0047]判断单元,用于判断所述最新的消息操作命令对应的命令标识是否与本地缓存的命令标识不相同;并
[0048]确定所述最新的消息操作命令对应的命令标识与本地缓存的命令标识不相同时,获取所述最新的消息操作命令;
[0049]处理单元,用于基于所述最新的消息操作命令对所述消息同步装置的内存进行数据处理。
[0050]结合第四方面,在第一种可能的实现方式中,所述获取单元具体用于:
[0051 ] 对所述命令执行文件进行监控;
[0052]在监控到最新的消息操作命令和对应的命令标识保存至所述命令执行文件中时,获取所述最新的消息操作命令对应的命令标识。
[0053]结合第四方面或第四方面的第一种可能的实现方式,在第二种可能的实现方式中,所述处理单元具体用于:
[0054]解析所述最新的消息操作命令,获取对应的数据处理指令;
[0055]根据所述数据处理指令从指定位置读取对应的数据,将读取的所述数据添加至所述消息同步装置的内存;或者将所述数据处理指令中携带的数据添加至所述消息同步装置的内存;或者根据所述数据处理指令,将所述消息同步装置的内存中的指定数据进行删除。
[0056]结合第四方面或第四方面的以上任一种可能的实现方式,在第三种可能的实现方式中,所述处理单元在基于所述最新的消息操作命令对所述消息同步装置的内存进行数据处理后,还用于:
[0057]使用所述最新的消息操作命令对应的命令标识对本地缓存的命令标识进行更新。
[0058]结合第四方面或第四方面的以上任一种可能的实现方式,在第四种可能的实现方式中,还包括:
[0059]检测单元,用于对自身的内存进行周期性检测,若检测结果为异常或所述应用节点重启时,则获取预设在所述检测单元中的对内存进行初始化的消息操作命令;
[0060]根据所述消息操作命令从指定位置读取数据对所述内存进行初始化;
[0061]使用所述消息操作命令对应的预设命令标识,对本地缓存的命令标识进行更新。
[0062]采用本发明技术方案,通过同步节点接收同步控制节点发送的同步消息后
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1