一种集群式交换***及方法
技术领域
本发明涉及数据交换技术领域,尤其是涉及了一种集群式交换***及方法。
背景技术
传统数据交换***,主要是单机应用,是封装在网络隔离设备中或隔离设备两侧的单独交换服务器中,通过协议加密手段,保证数据安全隔离交换。但这种技术存在***结构上的缺陷,一方面由于其物理结构单一,无法在单点设备故障情况下自我恢复;另一方面在业务扩展的情况下,数据源多样性、抽取交换流量繁多、原始数据不断增长都会影响***的处理能力。虽然增装多套***可以解决问题,但增装多套***会使资源分散、负载不均衡、无法动态分配资源、无法动态扩容,降低了***应用的灵活性。
发明内容
为解决现有技术的不足,提升数据交换稳定性、可持续性、可扩展性、可靠性,本发明采用如下的技术方案:
一种集群式交换***,包括:数据抽取模块、隔离交换模块、隔离设备和数据装载模块,所述隔离交换模块包括抽取侧隔离交换模块和装载侧隔离交换模块,抽取侧隔离交换模块包括数据加密模块和通道申请模块,装载侧隔离交换模块包括数据解密模块,数据抽取模块将采集的数据分发给抽取侧隔离交换模块的数据加密模块进行加密,加密后的数据进入通道申请模块,通道申请模块获取通道配置并根据通道配置选择最优可用通道,将申请到的通道与隔离设备绑定并通知装载侧隔离交换模块启动接收进程,隔离设备将数据传输至装载侧隔离交换模块,经数据解密模块解密后,将数据转发至数据装载模块进行数据装载,数据抽取模块、抽取侧隔离交换模块、隔离设备、装载侧隔离交换模块和数据装载模块之间采用非对称部署。各类型的模块资源消耗不尽相同,通过非对称部署可以仅针对某一类模块的数量、程序、配置等进行局部调整,无需对整个***进行全局调整,从而实现动态利用交换***的资源,灵活实现了模块化即插即用,提高了***部署和维护的便捷性的同时,合理分配资源、节约成本。通道申请机制通过各通道的配置信息选择最优通道,并且及时启动接收进程,自动完成通道择优、通道与隔离设备的绑定及接收的启动工作,提高了效率,优化了传输资源,降低能耗。
所述通道申请模块还用于通道申请的锁定,在锁定后,获取通道配置并根据通道配置选择最优可用通道,将申请到的通道与隔离设备绑定并通知装载侧隔离交换模块启动接收进程,通道使用完毕后解除通道申请的锁定。在集群多台主机或多路隔离交换任务同时申请通道时,通过锁定排队的方式交替申请,以消除通道使用冲突,从而使多主机能够自动优化选择,提高了数据通道使用效率。
所述抽取侧隔离交换模块包括数据发送模块,当发送数据至隔离设备失败时,返回通道申请模块重新申请,并优先规避发送失败的隔离设备绑定的通道。实现通道的故障自动切换,使隔离设备遇问题时传输能自动恢复,提高了传输速率。
各模块采用多进程、多线程的工作模式,提高了数据交换性能,交换***还包括***监控模块,用于发现各模块的异常进程并及时开启替代进程,保证交换任务正常稳定运行,实现自动恢复,以及实时检查隔离交换模块心跳状态,在状态异常时,自动切换到其它隔离交换模块,实现数据交换单点故障自动恢复。
一种集群式交换方法,数据抽取模块、抽取侧隔离交换模块、隔离设备、装载侧隔离交换模块和数据装载模块之间采用非对称部署进行数据交换,包括如下步骤:
S101,数据抽取模块采集数据并分发给抽取侧隔离交换模块;
S102,抽取侧隔离交换模块加密数据后发起通道申请,通道申请包括如下步骤:
S201,获取通道配置并根据通道配置选择最优可用通道;
S202,将申请到的通道与隔离设备绑定;
S203,并通知装载侧隔离交换模块启动接收进程;
S103,隔离设备将数据传输至装载侧隔离交换模块;
S104,装载侧隔离交换模块将数据解密并转发至数据装载模块进行数据装载。
各类型的模块资源消耗不尽相同,通过非对称部署可以仅针对某一类模块的数量、程序、配置等进行局部调整,无需对整个***进行全局调整,从而实现动态利用交换***的资源,灵活实现了模块化即插即用,提高了***部署和维护的便捷性的同时,合理分配资源、节约成本。通道申请机制通过各通道的配置信息选择最优通道,并且及时启动接收进程,自动完成通道择优、通道与隔离设备的绑定及接收的启动工作,提高了效率,优化了传输资源,降低能耗。
所述隔离设备以资源池的形式提供给抽取侧隔离交换模块,根据通道配置进行申请并绑定使用,通道配置包括空闲状态、历史状态、节点优先级、通道TCP连接状态。通过一系列的智能算法对等通道配置的信息进行分析,保障隔离设备通道资源的合理分配和使用。
所述隔离交换模块采用分布式部署,根据交换任务配置,将一组隔离交换模块分配在多台交换服务器中,增加***部署灵活性的同时,各隔离交换模块同样可以发送数据至同一台隔离设备,从而实现隔离设备通道的并行负载,提高了传输速率,实现负载均衡。
所述申请通道,还包括通道申请的锁定,在锁定后,获取通道配置并根据通道配置选择最优可用通道,将申请到的通道与隔离设备绑定并通知装载侧隔离交换模块启动接收进程,通道使用完毕后解除该通道申请的锁定。在集群多台主机或多路隔离交换任务同时申请通道时,通过锁定排队的方式交替申请,以消除通道使用冲突,从而使多主机能够自动优化选择,提高了数据通道使用效率。
所述抽取侧隔离交换模块发送数据至隔离设备失败时,返回通道申请模块重新申请,并优先规避发送失败的隔离设备的通道。实现通道的故障自动切换,使隔离设备遇问题时传输能自动恢复,提高了传输速率。
各模块采用多进程、多线程的工作模式,提高了数据交换性能,同时对整个交换过程进行监控,当发现各模块的异常进程时,及时开启替代进程,保证交换人物正常稳定运行,实现自动恢复,实时检查隔离交换模块心跳状态,在状态异常时,自动切换到其它隔离交换模块,实现数据交换单点故障自动恢复。
本发明的优势和有益效果在于:
克服了传统数据交换***的交换服务器单点故障,使得交换任务可以即时恢复,有效保障数据交换稳定性;交换服务器可动态扩容,且不影响原有交换业务,提高了交换***可持续性、可扩展性;最大限度利用了主机资源分配,自动调整隔离交换通道资源,使数据交换始终部署在最优负载状态;智能调整使用数据交换通道,进一步提高了数据交换的可靠性。
附图说明
图1是本发明中***的结构框图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
集群式数据交换***是基于分布式***结构,以数据一致性工作方式的Zab为协议,保证集群基础数据同步,基础数据是用于支撑***的自有数据,以多副本分别存储在多台交换设备,保证统一配置部署、运行管理,也保证了设备单点故障时,交换传输的可靠性。
如图1所示,***包括:数据抽取模块,用于采集数据源数据,组装成私有格式数据,分发到隔离交换模块;隔离交换模块,用于将私有格式数据,发送到隔离设备,再由隔离设备转发到数据装载模块;数据装载模块,用于将私有格式数据还原成应用层数据格式,发送到目标数据源;***监控模块,用于***状态及以上三类模块工作状态的监控,即时发现异常进程,并自动恢复。
隔离交换模块包括抽取侧隔离交换模块和装载侧隔离交换模块,其中抽取侧隔离交换模块的工作流程包括如下步聚:
1、读取采集数据队列中的数据;
2、数据加密处理;
3、根据申请通道流程,选择隔离通道,动态绑定申请到的通道;
4、数据发送到绑定通道的隔离设备。
隔离交换模块根据交换任务配置,允许分配在多台交换服务器中,实现数据交换的通道负载均衡;隔离交换模块心跳状态被***监控实时检查是否成功,如果失败,将自动切换到其它隔离交换模块,实现数据交换单点故障自动恢复。
申请通道流程包括:在申请锁定后,读取到基础数据通道配置,依次通过空闲状态、历史状态、节点优先级、通道TCP连接状态等分析最优的可用通道;在申请到通道后,启动装载侧的接收进程和解除通道锁定状态。
申请锁定用于集群多台主机,或多路隔离交换任务同时申请策略时,通过锁定排队的方式交替申请,以消除通道使用冲突,从而使多主机能够自动优化选择,提高了数据通道使用效率。
以三台隔离设备为例,两侧也各有三台交换服务器,分别部署集群数据交换***。此处安装部署数量仅体现集群形态时的最小化数量,其中隔离设备允许只有一台,且支持隔离设备两则集群数据交换***数据量以非对称部署,例如:隔离设备左侧有三台交换服务器,隔离设备有三台,隔离设备右侧有三台交换服务器,按比例体现是3:3:3;也可以非对称部署成3:1:3或3:3:5或5:3:3或以单机形态出现1:1:1。非对称部署,通过隔离设备两侧的抽取和装载工作所消耗的资源不同为前提,对其调整成针对性设计安装的形态,数据装载模块,有多个装载点,每个装载点均安装在各自服务器中,当装载需要占用更多的资源时,可以仅在数据装载模块增装设备及安装新的数据装载模块程序,从而实现动态利用交换***的资源,灵活实现了模块化即插即用。
本申请的***所包含的数据抽取模块、隔离交换模块、数据装载模块、***监控模块,不同模块均以多进程、多线程的模式工作,提高了数据交换性能。
交换任务在每个模块都有相应进程,任何进程故障都会被***监控到,例如装载点2进程异常,***监控发现后会及时开启新的进程替代装载点2的进程。即便是装载点2所在设备宕机,也能在其它设备重新开启新的进程替代装载点2进程,保证交换任务正常稳定运行。
隔离设备以资源池的形式提供给隔离交换模块申请并绑定使用,同时,通过空闲状态、历史状态、节点优先级、通道TCP连接状态分析等一系列智能算法保障隔离设备通道资源的合理分配和使用,通道切换步骤如下:
1、隔离交换模块发送数据到隔离设备1,所述隔离交换模块可以是多台设备多个进程;
2、隔离设备1产生故障,隔离交换模块发送数据失败,将重新申请新的设备及通道资源,并优先规避故障设备的通道资源;
3、隔离交换模块向申请到的新通道资源再次尝试发送数据,且成功发送。
隔离交换设备能在出现问题时自动恢复,提高了***可靠性,同时隔离交换模块为分布式,各个隔离交换模块同样可以发送数据至同一台隔离设备,从而实现隔离设备通道的并行负载,提高了传输速率。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的范围。