一种数据配送方法及装置与流程

文档序号:18899275发布日期:2019-10-18 21:42阅读:196来源:国知局
一种数据配送方法及装置与流程

本发明涉及数据处理技术领域,特别涉及一种数据配送方法及装置。



背景技术:

在当前数据交易配送中,会在供需双方服务器上安装前置机,然后交易系统推送对应工单至前置机,前置机根据工单完成数据配送。其中,数据配送是数据交易环节中的重要一环,而且数据配送装置本身是复杂的,是一个高并发高吞吐的装置。

现有技术中,在庞大的数据配送装置中要实现高效稳定可控,通常存在以下问题:(1)服务器出现宕机或者前置机出现故障无法感知;(2)现有前置机不支持集群部署,只能单机运行,而单机容易发生性能瓶颈;(3)当服务器突然宕机、网络出现问题或者服务不可用时不仅无法动态感知而且没有备用系统自动切换,因此无法保证装置的高可用。

因此,有必要提供一种数据配送方法及装置,实现实时、高效、稳定可靠的配送数据,以提高装置整体配送效率。



技术实现要素:

本发明的目的在于提供一种数据配送方法及装置,实现实时、高效、稳定可靠的配送数据,以提高装置整体配送效率。

为了解决现有技术中存在的问题,本发明提供了一种数据配送方法,包括以下步骤:

建立具有多个永久节点的节点树,每个所述永久节点下有至少一个临时节点,每个临时节点对应一个用于配送的终端设备;

每个所述终端设备实时监听其对应的永久节点,若所述终端设备监听到其对应的永久节点发生变化,则从其对应的永久节点拉取工单,根据所述工单进行配送,直至完成配送。

可选的,在所述数据配送方法中,永久节点发生变化包括以下步骤:数据供方和/或数据需方的永久节点根据工单进行修改,将工单信息存入所述数据供方和/或数据需方的永久节点中。

可选的,在所述数据配送方法中,每个永久节点对应一个所述数据供方或一个所述数据需方,每个临时节点对应一个用于配送的终端设备,所述终端设备为前置机。

可选的,在所述数据配送方法中,永久节点的形成包括以下步骤:当所述数据供方和/或所述数据需方的前置机启动时,向所述节点树中的顶层节点注册基本信息;

所述顶层节点根据所述基本信息判断所述数据供方和/或所述数据需方是否是第一次注册,若是,则在顶层节点下新建永久节点;反之,则在所述数据供方和/或所述数据需方现有的永久节点下创建临时节点。

可选的,在所述数据配送方法中,各永久节点下的临时节点对应的前置机组成各自的前置机集群,所述工单的配送包括以下步骤:

由数据供方前置机集群向数据需方前置机集群传输数据。

可选的,在所述数据配送方法中,在生成所述工单直至完成配送期间,对所述配送任务进行监控和报警,包括以下步骤:

监控到所述数据供方和/或所述数据需方的永久节点、所述数据供方和/或所述数据需方的临时节点以及配送任务发生异常时,进行报警并执行补偿机制。

可选的,在所述数据配送方法中,所述补偿机制包括以下步骤:

当由于前置机故障或网络故障导致对应的临时节点断开后,则对应的临时节点失效,失效临时节点对应前置机的工作由失效临时节点所在永久节点下的其余临时节点对应前置机完成。

可选的,在所述数据配送方法中,在实时监控配送任务的同时,还包括以下步骤:

对配送日志进行存档备份以及分析。

本发明还提供了一种数据配送装置,包括:

中心控制单元,配置为包括具有多个永久节点的节点树,每个所述永久节点下有至少一个临时节点,每个临时节点对应一个用于配送的终端设备;每个所述终端设备实时监听其对应的永久节点,若所述终端设备监听到其对应的永久节点发生变化,则从其对应的永久节点拉取工单,根据所述工单进行配送,直至完成配送。

可选的,在所述数据配送装置中,永久节点包括以下变化情况:数据供方和/或数据需方的永久节点根据工单进行修改,将工单信息存入所述数据供方和/或数据需方的永久节点中。

可选的,在所述数据配送装置中,每个永久节点对应一个所述数据供方或一个所述数据需方,每个临时节点对应一个用于配送的终端设备,所述终端设备为前置机。

可选的,在所述数据配送装置中,所述中心控制单元还配置为用于建立永久节点,建立永久节点的方式如下:当所述数据供方和/或所述数据需方的前置机启动时,向所述节点树中的顶层节点注册基本信息;

所述顶层节点根据所述基本信息判断所述数据供方和/或所述数据需方是否是第一次注册,若是,则在顶层节点下新建永久节点;反之,则在所述数据供方和/或所述数据需方现有的永久节点下创建临时节点。

可选的,在所述数据配送装置中,所述数据配送装置还包括前置机集群单元,所述前置机集群单元包括各永久节点下的临时节点对应的前置机组成各自的前置机集群;

所述工单的配送方式为:所述中心控制单元控制数据供方前置机集群向数据需方前置机集群传输数据。

可选的,在所述数据配送装置中,所述数据配送装置还包括配送监控单元,所述配送监控单元配置为在生成所述工单直至完成配送期间,对所述配送任务进行监控和报警,对所述配送任务的监控和报警方式如下:

监控到所述数据供方和/或所述数据需方的永久节点、所述数据供方和/或所述数据需方的临时节点以及配送任务发生异常时,进行报警并执行补偿机制。

可选的,在所述数据配送装置中,所述补偿机制如下:当由于前置机故障或网络故障导致对应的临时节点断开后,则对应的临时节点失效,失效临时节点对应前置机的工作由失效临时节点所在永久节点下的其余临时节点对应前置机完成。

可选的,在所述数据配送装置中,所述数据配送装置还包括数据分析单元,配置为在配送监控单元实时监控配送任务的同时,对配送日志进行存档备份以及分析。

在本发明所提供的数据配送方法及装置中,通过在每个永久节点下对应连接至少一个前置机实现集群化部署,且每个前置机实时监听其对应的永久节点,因此在每个前置机中都可以获取到其监听的永久节点下所有前置机的列表信息,并存储在内存中,当发生配送任务时,各前置机可以根据当前内存中存储的列表信息,加上负载均衡算法进行负载均衡,从而实现高效率配送。

附图说明

图1为本发明实施例提供的数据配送方法的流程图;

图2为本发明实施例提供的单个永久节点示意图;

图3为本发明实施例提供的数据配送示意图。

具体实施方式

下面将结合示意图对本发明的具体实施方式进行更详细的描述。根据下列描述和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。

在下文中,如果本文所述的方法包括一系列步骤,且本文所呈现的这些步骤的顺序并非必须是可执行这些步骤的唯一顺序,且一些所述的步骤可被省略和/或一些本文未描述的其他步骤可被添加到该方法。

本发明提供了一种数据配送方法,如图1所示,图1为本发明实施例提供的数据配送方法的流程图,所述数据配送方法包括以下步骤:

建立具有多个永久节点的节点树,每个所述永久节点下有至少一个临时节点,每个临时节点对应一个用于配送的终端设备;

每个所述终端设备实时监听其对应的永久节点,若所述终端设备监听到其对应的永久节点发生变化,则从其对应的永久节点拉取工单,根据所述工单进行配送,直至完成配送。

本发明通过在每个永久节点下对应连接至少一个前置机实现集群化部署,且每个前置机实时监听其对应的永久节点,因此在每个前置机中都可以获取到其监听的永久节点下所有前置机的列表信息,并存储在内存中,当发生配送任务时,各前置机可以根据当前内存中存储的列表信息,加上负载均衡算法进行负载均衡,从而实现高效率配送。

进一步的,永久节点发生变化包括以下步骤:当新订单入库之后便会生成工单,中心控制单元会自动将工单信息存入所述数据供方和/或数据需方的永久节点中,因此数据供方和/或数据需方的永久节点会根据工单进行修改。

如图2和图3所示,图2为本发明实施例提供的单个永久节点示意图,图3为本发明实施例提供的数据配送示意图,每个永久节点对应一个所述数据供方或一个所述数据需方,每个临时节点对应一个用于配送的终端设备,所述终端设备为前置机。并且,各永久节点下的临时节点对应的前置机组成各自的前置机集群,在图3中,包括了数据供方前置机集群和数据需方前置机集群,各前置机集群中包括至少一个前置机,例如可能为1个、2个、3个、4个或者5个前置机等。进一步的,所述工单的配送包括以下步骤:当所述工单开始配送后,所述数据供方需要向所述数据需方提供数据,则由所述数据供方前置机集群向所述数据需方前置机集群传输数据。具体的,对于集群来说,一般默认使用轮询的负载均衡算法,可以自定义负载均衡算法,数据供方前置机根据内存中前置机集群的列表信息,加上负载均衡算法,计算出当前执行配送任务的前置机,对应前置机则进行数据配送任务。

在所述数据配送方法中,所述节点树还具有至少一个顶层节点,在所述节点树的永久节点较多的情况下,可以增加顶层节点的数量。进一步的,永久节点的形成包括以下步骤:当所述数据供方和/或所述数据需方的前置机启动时,向所述节点树中的顶层节点注册基本信息;

所述顶层节点根据所述基本信息判断所述数据供方和/或所述数据需方是否是第一次注册,若是,则在顶层节点下新建永久节点;反之,则在所述数据供方和/或所述数据需方现有的永久节点下创建临时节点。

具体的,当数据供方或者数据需方的一台前置机启动时,会自动向中心控制单元的顶层节点注册自己的基本信息,中心控制单元维护着所述节点树,如果是数据供方或者数据需方第一次注册,则会创建一个含有数据供方或者数据需方基本信息的永久节点,然后在该永久节点下创建一个临时节点,并在该临时节点上存储当前前置机的基本信息,各前置机监听其父节点即监听永久节点;当启动其他前置机时,也会将前置机的基本信息注册到中心控制单元,此时不再创建永久节点,直接在永久节点下创建临时节点,所述临时节点存储其对应前置机的基本信息,前置机同时监听父节点即监听永久节点。进一步的,各数据供方或数据需方根据实际情况部署相应数量的前置机,每个数据供方或数据需方对应一个永久节点,并将该数据供方或数据需方的基本信息存储到该永久节点上,数据供方或数据需方的各个前置机对应该永久节点下的各个临时节点,并将每个前置机的ip地址端口等信息写入对应的临时节点中;然后监听该数据供方或数据需方的永久节点,即可完成数据供方或数据需方前置机的服务注册与监听。

较佳的,在所述前置机从其对应的永久节点拉取工单之后,根据所述工单进行配送之前,还可以包括以下步骤;检查所述数据供方和所述数据需方的临时节点的配送条件。具体的,中心控制单元控制数据需方前置机初始化检查自身系统情况,如果满足配送条件,配送监控单元将监控到数据需方前置机已就绪的情况反馈给中心控制单元,中心控制单元控制数据供方前置机同样初始化,如果满足配送条件,配送监控单元将监控到数据供方前置机已就绪的情况反馈给中心控制单元,从而确认配送的条件。

进一步的,在生成所述工单直至完成配送期间,对所述配送任务进行监控和报警,对所述配送任务进行监控和报警具体可以包括以下步骤:

监控到所述数据供方和/或所述数据需方的永久节点、所述数据供方和/或所述数据需方的临时节点以及配送任务发生异常时,进行报警并执行补偿机制。本发明可以做到实时监控配送任务执行情况,如果异常配送可以自动警告,终止任务继续执行,通知中心控制单元执行补偿机制。

在一个实施例中,所述补偿机制可以包括以下方式,由于数据供方或者数据需方的各个前置机都对应永久节点下创建的临时节点,所以一旦某个前置机或网络发生故障导致对应的临时节点断开后,则将不再连接中心控制单元,由于临时节点的特性,此临时节点被自动删除。其他前置机由于监听了永久节点,所以一旦永久节点下失去一个临时节点,便能感知到变化,更新其内存中的前置机集群的列表信息,同时中心控制单元也能感知到当前数据供方或者数据需方的某个前置机故障失联。因此,如果配送过程中发生异常,或者超过阀值,则配送监控单元会进行预警,将通知中心控制单元执行相应的补偿机制,例如让失效临时节点对应前置机的工作由失效临时节点所在永久节点下的其余临时节点对应前置机完成,在多次重试补偿失败的情况下会通知技术人员进行人工干预,保证配送任务能够顺利完成。

在所述数据配送方法中,生成所述工单的方法包括:创建标准化数据产品订单,根据所述订单建立所述工单。具体的,当新订单入库之后便会生成工单,中心控制单元会根据工单自动修改数据供需方永久节点,数据供需方前置机监听到永久节点变化之后,便会向中心控制单元拉取工单,然后根据工单完成配送任务。在一个实施例中,根据所述订单建立所述工单的方法如下:订单包含供方编号、需方编号、产品名称、产品类型、计价模式、单价以及配送模式等;工单基于订单进行一层抽取,工单主要负责配送,因此所述工单主要包含数据供方的前置机地址、数据需方的前置机地址、配送模式以及配送详细信息等。数据供方前置机获取工单后根据所述工单中的数据需方前置机地址先建立连接,然后根据配送模式与配送详细信息进行配送。

进一步地,在实时监控配送任务的同时,还包括以下步骤:对配送日志进行存档备份以及分析。例如可以专注于对数据配送装置产生的配送日志进行分析,汇总出配送量以便清算。

本发明还提供了一种数据配送装置,如图2和3所示,所述数据配送装置包括:

中心控制单元,配置为包括具有多个永久节点的节点树,每个所述永久节点下有至少一个临时节点,每个临时节点对应一个用于配送的终端设备;每个所述终端设备实时监听其对应的永久节点,若所述终端设备监听到其对应的永久节点发生变化,则从其对应的永久节点拉取工单,根据所述工单进行配送,直至完成配送。

本发明通过在每个永久节点下对应连接至少一个前置机实现集群化部署,且每个前置机实时监听其对应的永久节点,因此在每个前置机中都可以获取到其监听的永久节点下所有前置机的列表信息,并存储在内存中,当发生配送任务时,各前置机可以根据当前内存中存储的列表信息,加上负载均衡算法进行负载均衡,从而实现高效率配送。

进一步的,永久节点包括以下变化情况:当新订单入库之后便会生成工单,中心控制单元会自动将工单信息存入所述数据供方和/或数据需方的永久节点中,因此数据供方和/或数据需方的永久节点会根据工单进行修改。

在所述数据配送装置中,每个永久节点对应一个所述数据供方或一个所述数据需方,每个临时节点对应一个用于配送的终端设备,所述终端设备为前置机。进一步的,所述数据配送装置还包括前置机集群单元,所述前置机集群单元包括各永久节点下的临时节点对应的前置机组成各自的前置机集群,在图3中,包括了数据供方前置机集群和数据需方前置机集群,各机前置集群中包括至少一个前置机,例如可能为1个、2个、3个、4个或者5个前置机等。所述工单的配送方式为:当所述工单开始配送后,所述数据供方需要向所述数据需方提供数据,则由所述数据供方前置机集群向所述数据需方前置机集群传输数据。具体的,对于集群来说,一般默认使用轮询的负载均衡算法,可以自定义负载均衡算法,数据供方前置机根据内存中前置机集群的列表信息,加上负载均衡算法,计算出当前执行配送任务的前置机,对应前置机则进行数据配送任务。

进一步的,所述中心控制单元的节点树中还具有至少一个顶层节点,在所述节点树的永久节点较多的情况下,可以增加顶层节点的数量。所述中心控制单元还配置为用于建立永久节点,建立永久节点的方式如下:当所述数据供方和/或所述数据需方的前置机启动时,向所述顶层节点注册基本信息;

所述顶层节点根据所述基本信息判断所述数据供方和/或所述数据需方是否是第一次注册,若是,则在顶层节点下新建永久节点;反之,则在所述数据供方和/或所述数据需方现有的永久节点下创建临时节点。

具体的,当数据供方或者数据需方的一台前置机启动时,会自动向中心控制单元的顶层节点注册自己的基本信息,中心控制单元维护着所述节点树,如果是数据供方或者数据需方第一次注册,则会创建一个含有数据供方或者数据需方基本信息的永久节点,然后在该永久节点下创建一个临时节点,并在该临时节点上存储当前前置机的基本信息,各前置机监听其父节点即监听永久节点;当启动其他前置机时,也会将前置机的基本信息注册到中心控制单元,此时不再创建永久节点,直接在永久节点下创建临时节点,所述临时节点存储其对应前置机的基本信息,前置机同时监听父节点即监听永久节点。进一步的,各数据供方或数据需方根据实际情况部署相应数量的前置机,每个数据供方或数据需方对应一个永久节点,并将该数据供方或数据需方的基本信息存储到该永久节点上,数据供方或数据需方的各个前置机对应该永久节点下的各个临时节点,并将每个前置机的ip地址端口等信息写入对应的临时节点中;然后监听该数据供方或数据需方的永久节点,即可完成数据供方或数据需方前置机的服务注册与监听。

较佳的,所述中心控制单元还可以检查所述数据供方和所述数据需方的前置机的配送条件,检查配送条件可以在所述前置机从其对应的永久节点拉取工单之后,根据所述工单进行配送之前进行。具体检查配送条件方式如下:中心控制单元控制数据需方前置机初始化检查自身系统情况,如果满足配送条件,配送监控单元将监控到数据需方前置机已就绪的情况反馈给中心控制单元,中心控制单元控制数据供方前置机同样初始化,如果满足配送条件,配送监控单元将监控到数据供方前置机已就绪的情况反馈给中心控制单元,从而确认配送的条件。

进一步的,所述数据配送装置还包括配送监控单元,所述配送监控单元配置为在生成所述工单直至完成配送期间,对所述配送任务进行监控和报警,对所述配送任务的监控和报警方式如下:

监控到所述数据供方和/或所述数据需方的永久节点、所述数据供方和/或所述数据需方的临时节点以及配送任务发生异常时,进行报警并执行补偿机制。本发明可以做到实时监控配送任务执行情况,如果异常配送可以自动警告,终止任务继续执行,通知中心控制单元执行补偿机制。

在一个实施例中,所述补偿机制可以包括以下方式,由于数据供方或者数据需方的各个前置机都对应永久节点下创建的临时节点,所以一旦某个前置机或网络发生故障导致对应的临时节点断开后,则将不再连接中心控制单元,由于临时节点的特性,此临时节点被自动删除。其他前置机由于监听了永久节点,所以一旦永久节点下失去一个临时节点,便能感知到变化,更新其内存中的前置机集群的列表信息,同时中心控制单元也能感知到当前数据供方或者数据需方的某个前置机故障失联。因此,如果配送过程中发生异常,或者超过阀值,则配送监控单元会进行预警,将通知中心控制单元执行相应的补偿机制,例如让失效临时节点对应前置机的工作由失效临时节点所在永久节点下的其余临时节点对应前置机完成,在多次重试补偿失败的情况下会通知技术人员进行人工干预,保证配送任务能够顺利完成。

较佳的,所述数据配送装置还包括门户单元,配置为向所述数据供方和所述数据需方提供交互接口,在所述门户单元中创建标准化数据产品订单,所述中心控制单元根据所述订单建立所述工单。具体的,当新订单入库之后便会生成工单,中心控制单元会根据工单自动修改数据供需方永久节点,数据供需方前置机监听到永久节点变化之后,便会向中心控制单元拉取工单,然后根据工单完成配送任务。在一个实施例中,根据所述订单建立所述工单的方法如下:订单包含供方编号、需方编号、产品名称、产品类型、计价模式、单价以及配送模式等;工单基于订单进行一层抽取,工单主要负责配送,因此所述工单主要包含数据供方的前置机地址、数据需方的前置机地址、配送模式以及配送详细信息等。数据供方前置机获取工单后根据所述工单中的数据需方前置机地址先建立连接,然后根据配送模式与配送详细信息进行配送。

较佳的,所述数据配送装置还包括数据分析单元,配置为在实时监控配送任务的同时,对配送日志进行存档备份以及分析。例如可以专注于对数据配送装置产生的配送日志进行分析,汇总出配送量以便清算。

在本发明所提供的数据配送装置中,包括以下单元模块:

门户单元:用于向会员提供数据交易服务的门户。通过门户单元,数据供方和数据需方的会员可实现数据交易的商品挂牌、需求发布、数据订购、交易管理、信息查询以及清结算等业务。

数据分析单元:用于对数据配送装置产生的配送日志进行分析,汇总出配送量供门户单元进行清算、结算。

数据供方:在门户单元开户之后,可以在门户单元创建交易品互联对象,挂牌上架。

数据需方:在门户单元开户之后,可以在门户单元购买数据供方挂牌上架的交易品互联对象。

中心控制单元:用于管理控制数据交易中心的所有供需方前置机以及配送任务。可以在中心控制单元中,管理供需方的前置机,动态监控各个前置机的运行状态,当有配送任务时,将任务下发至各个前置机,以及当配送异常时执行补偿机制。

配送监控单元:配送监控单元可以查看所有前置机的配送情况,负责配送任务的监控、预警、终止以及配送情况的统计上报。

永久节点:中心控制单元中节点树的一种节点,创建后,未注册的数据供方和数据需方的前置机可以通过该节点与中心控制单元创建连接。

永久节点:中心控制单元中节点树的一种节点,创建后,如果不是主动触发删除,不会删除该节点,一直存在中心控制单元上。

临时节点:中心控制单元中节点树的一种节点,该节点的生命周期和客户端会话绑定在一起,客户端会话失效,则这个节点就会被自动清除。

综上,在本发明所提供的数据配送方法及装置中,通过在每个永久节点下对应连接至少一个前置机实现集群化部署,且每个前置机实时监听其对应的永久节点,因此在每个前置机中都可以获取到其监听的永久节点下所有前置机的列表信息,并存储在内存中,当发生配送任务时,各前置机可以根据当前内存中存储的列表信息,加上负载均衡算法进行负载均衡,从而实现高效率配送;本发明还通过在生成所述工单直至完成配送期间,监控所述数据供方和/或所述数据需方的永久节点、所述数据供方和/或所述数据需方的临时节点以及配送任务,实现实时监控配送中的故障并及时处理和报警。

上述仅为本发明的优选实施例而已,并不对本发明起到任何限制作用。任何所属技术领域的技术人员,在不脱离本发明的技术方案的范围内,对本发明揭露的技术方案和技术内容做任何形式的等同替换或修改等变动,均属未脱离本发明的技术方案的内容,仍属于本发明的保护范围之内。

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