一种搜索云消息实时分发系统及方法

文档序号:9708340阅读:398来源:国知局
一种搜索云消息实时分发系统及方法
【技术领域】
[0001]本发明涉及通讯技术领域,特别涉及一种搜索云消息实时分发系统及方法。
【背景技术】
[0002]在电商等垂直搜索领域,商品的上下架、商品价格的调整、库存的变更等需要近乎实时地更新到搜索引擎的索引中以提供及时准确的搜索服务。在精准广告投放弓丨擎中,广告的上下线、广告出价的调整、广告素材的变更等对消息的实时性、一致性需求更为强烈。基于消息机制的数据实时分发引擎已经成为垂直搜索及精准广告投放应用不可或缺的组件。而现有技术中数据之间的时序一致性和数据的完整性略有欠缺。

【发明内容】

[0003]本发明的目的在于提供一种搜索云消息实时分发系统及方法,以解决现有技术中数据之间的时序一致性和数据的完整性有欠缺的问题。
[0004]为解决上述技术问题,本发明提供一种搜索云消息实时分发方法,包括:
[0005]分发器接收消息通知端的即时数据更新消息,向分发管理器请求消息序列号;
[0006]所述分发管理器生成消息序列号,并将所述消息序列号和即时数据更新消息备份到分发管理器备份服务器;所述分发管理器反馈消息序列号至分发器,所述分发器反馈确认接收信号至所述消息通知端;
[0007]所述分发器发送所述消息序列号和即时数据更新消息至更新索引服务器;所述更新索引服务器将所述即时数据更新消息存储至内存字典后反馈确认信号至所述分发器;
[0008]所述更新索引服务器根据所述即时数据更新消息即时更新索引。
[0009]进一步的,在所述的搜索云消息实时分发方法中,
[0010]在所述分发管理器生成消息序列号步骤后还包括步骤:分发管理器将所述消息序列号和即时数据更新消息备份到分发管理器本地磁盘;
[0011]在所述分发器反馈确认接收信号至所述消息通知端步骤后还包括步骤:分发器反馈确认接收信号至所述分发管理器,所述分发管理器在所述分发管理器本地磁盘删除已备份的即时数据更新消息;
[0012]进一步的,在所述的搜索云消息实时分发方法中,在所述分发器发送所述消息序列号和即时数据更新消息至更新索引服务器步骤后还包括步骤:所述更新索引服务器备份所述消息序列号和即时数据更新消息至更新索引服务器本地磁盘。
[0013]进一步的,在所述的搜索云消息实时分发方法中,还包括步骤:分发器分别发送心跳消息至分发管理器和更新索引服务器;
[0014]所述分发管理器和更新索引服务器分别反馈心跳应答消息至分发器。
[0015]进一步的,在所述的搜索云消息实时分发方法中,所述即时数据更新消息包括:消息包的头部和消息包的消息体。
[0016]进一步的,在所述的搜索云消息实时分发方法中,所述消息包的头部包括:消息的字节数、消息的类型、消息的状态和消息来源的机器ID。
[0017]同时,本发明还提供一种搜索云消息实时分发系统,包括:分发器、分发管理器和更新索引服务器,其中,
[0018]所述分发器,用于接收消息通知端的即时数据更新消息,向所述分发管理器请求消息序列号;
[0019]所述分发管理器,用于生成消息序列号,并将所述消息序列号和即时数据更新消息备份到分发管理器备份服务器;所述分发管理器反馈消息序列号至分发器,所述分发器反馈确认接收信号至所述消息通知端;
[0020]所述分发器,还用于发送所述消息序列号和即时数据更新消息至所述更新索引服务器;
[0021]所述更新索引服务器,用于将所述即时数据更新消息存储至内存字典后反馈确认信号至所述分发器;
[0022]所述更新索引服务器,还用于根据所述即时数据更新消息即时更新索引。
[0023]进一步的,在所述的搜索云消息实时分发系统中,所述即时数据更新消息包括:消息包的头部和消息包的消息体。
[0024]进一步的,在所述的搜索云消息实时分发系统中,所述消息包的头部包括:消息的字节数、消息的类型、消息的状态和消息来源的机器ID。
[0025]本发明提供的搜索云消息实时分发系统及方法,具有以下有益效果:通过对每个即时数据更新消息进行编辑消息序列号,以保证消息的时序性和一致性。此外,分别在分发器、分发管理器、更新索引服务器进行本地备份机制,保证了消息的可用性。进一步的,采用心跳检测的缺失补偿机制,保证了消息的完整性和可用性。
【附图说明】
[0026]图1是本发明优选实施例的搜索云消息实时分发系统及方法示意图;
[0027]图2是本发明优选实施例的搜索云消息实时分发系统及方法的即时数据更新消息格式示意图。
【具体实施方式】
[0028]以下结合附图和具体实施例对本发明提出的搜索云消息实时分发系统及方法作进一步详细说明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
[0029]请参考图1,本发明提供一种搜索云消息实时分发方法,包括以下步骤:
[0030]1、分发器(Dispather) 100接收消息通知端的即时数据更新消息;
[0031]在本发明中所传输的即时数据更新消息都采用采用统一的消息数据包格式,如图2所示,消息包的头部是相同的,且包括消息的字节数、消息的类型、消息的状态和消息来源的机器ID ;而消息包的消息体的具体格式将根据消息类型的不同而有所区别;
[0032]2、所述分发器100向分发管理器200 (Dispather Admin)请求消息序列号;
[0033]3、所述分发管理器200生成消息序列号,并将所述消息序列号备份到分发管理器本地磁盘;
[0034]4、所述分发管理200将所述消息序列号备份到分发管理器备份服务器;
[0035]5、所述分发管理器200将所述即时数据更新消息备份到分发管理器本地磁盘;
[0036]6、所述分发管理器200将所述即时数据更新消息备份到分发管理器备份服务器;
[0037]7、所述分发管理器200反馈消息序列号至分发器100 ;
[0038]8、所述分发器100将所述消息序列号和即时数据更新消息备份到备份到分发管理器本地磁盘;
[0039]9、所述分发器100反馈确认接收信号至所述消息通知端;
[0040]10-11、所述分发器100反馈确认接收信号至所述分发管理器200 ;
[0041]12、所述分发管理器200在所述分发管理器本地磁盘删除已备份的即时数据更新消息;
[0042]13-14、所述分发器200发送所述消息序列号和即时数据更新消息至更新索引服务器 300(ISUpdate);
[0043]15、所述更新索引服务器300将消息序列号备份至更新索引服务器本地磁盘;
[0044]16、所述更新索引服务器300将即时数据更新消息备份至更新索引服务器本地磁盘;
[0045]17、所述更新索引服务器300将所述即时数据更新消息存储至内存字典;
[0046]18、所述更新索引服务器300反馈确认信号至所述分发器100 ;
[0047]19、所述更新索引服务器300根据所述即时数据更新消息即时更新索引。
[0048]为了确保数据的完整性,提供在系统出错情况下的数据恢复能力,本发明对消息进行了备份。消息的备份是通过Dispatcher服务器本地备份来实现的,本地备份减少了网络通信的开销。目前的系统可以保证数据至少成功备份在某一台Dispatcher或者Dispatch Admin服务器上。另外Dispatcher有相关的数据
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1