System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 系统间的文件交互方法、文件交换平台与电子设备技术方案_技高网

系统间的文件交互方法、文件交换平台与电子设备技术方案

技术编号:40117390 阅读:3 留言:0更新日期:2024-01-23 20:07
本申请提供了一种系统间的文件交互方法、文件交换平台与电子设备。包括:第一系统通过第一封装接口将待交互文件发送至文件交换平台的分布式对象存储服务组件,通过第二封装接口将第一事件消息异步地发送至文件交换平台的消息队列服务组件,消息队列服务组件通过事件驱动的方式将第一事件消息通过第一消息队列分发,使得第二系统通过第三封装接口监听第一消息队列,并在监听到第一事件消息的情况下,通过第四封装接口从分布式对象存储服务组件中获取待交互文件,第一事件消息中包括存储在分布式对象存储服务组件中的待交互文件的存储位置。实现了文件和事件的解耦,文件的交互借助文件交换平台实现避免了SFTP/FTP等服务的使用。

【技术实现步骤摘要】

本申请涉及数据交互领域,具体而言,涉及一种系统间的文件交互方法、文件交换平台、存储介质与电子设备。


技术介绍

1、相关技术中,各系统之间的文件交换通讯方式主要采用了sftp/ftp协议,即每个接收方系统都需要搭建sftp服务。例如,a系统要给b系统发送文件,则需要连接b系统的sftp服务器后再执行文件传输。通过sftp/ftp通讯的方式缺点如下:

2、(1)无法实现高可用和负载均衡。

3、(2)如果要在多个系统间互传文件,每个系统需要单独对自己的sftp/ftp服务器进行维护,需要单独定期进行文件备份和文件清理。

4、(3)当sftp/ftp服务不可用或服务器宕机时,将出现文件丢失、文件传输失败等情况。

5、相关技术中,常用的文件交换方法是发送方和接收方提前约定好传输文件存放的位置目录和文件命名规范,发送方只传输文件,接收方定时扫描目录获取文件并进行处理。在此方法的基础上,发送方还可对接收方的处理信息进行监听,接收方在收到文件和处理完成后,再根据实际需求给发送方反馈处理结果。(同理也可以是发送方请求文件,接收方只传输文件,发送方定时扫描目录获取文件并进行处理),这种方法的缺点如下:

6、(1)发送方无法获知接收方是否接收到文件,以及文件处理是否成功。

7、(2)对于包含监听的模式,交换文件的双方应用需独立开发监听器和进行确认反馈,并提前考虑底层处理过程中的各种复杂问题,如网络中断、事务一致性、幂等性等,增加了应用开发的复杂程度。

8、(3)如果发送方和接收方未提前约定好传输文件存放的位置目录和文件命名规范,此时则需要应用独立进行文件传输,并单独发送交易去通知接收方获取文件或进行确认反馈。


技术实现思路

1、本申请的主要目的在于提供一种系统间的文件交互方法、文件交换平台、存储介质与电子设备,以至少解决需要搭建服务的系统间文件交互方法当出现服务不可用或服务器宕机时,将出现文件丢失、文件传输失败等情况的问题。

2、为了实现上述目的,根据本申请的第一个方面,提供了一种系统间的文件交互方法,应用于文件交换平台,包括:所述文件交换平台为第一系统提供第一封装接口和第二封装接口,以使得所述第一系统通过所述第一封装接口将待交互文件发送至所述文件交换平台的分布式对象存储服务组件,所述第一系统通过所述第二封装接口将第一事件消息异步地发送至所述文件交换平台的消息队列服务组件,所述消息队列服务组件通过事件驱动的方式将所述第一事件消息通过第一消息队列分发,所述文件交换平台为第二系统提供第三封装接口和第四封装接口以使得所述第二系统通过所述第三封装接口监听所述第一消息队列,并在监听到所述第一事件消息的情况下,通过所述第四封装接口从所述分布式对象存储服务组件中获取所述待交互文件,所述第一事件消息中包括存储在所述分布式对象存储服务组件中的所述待交互文件的存储位置;或者,所述文件交换平台为第一系统提供第一封装接口,以使得所述第一系统通过所述第一封装接口将第二事件消息发送至所述文件交换平台的所述消息队列服务组件,所述消息队列服务组件通过事件驱动的方式将所述第二事件消息通过第二消息队列分发,所述文件交换平台为第二系统提供第二封装接口和第三封装接口以使得所述第二系统通过所述第二封装接口监听所述第二消息队列,并在监听到所述第二事件消息的情况下,通过所述第三封装接口将所述待交互文件发送至所述分布式对象存储服务组件,以供后续所述第一系统从所述分布式对象存储服务组件中获取所述待交互文件。

3、本申请的一些实施例中,所述方法还包括:所述文件交换平台为每一类待交互的文件建立一支交易,以建立所述文件与所述交易之间的路由映射,且各所述交易中采用指定的处理方法来处理对应类的待交互的文件。

4、本申请的一些实施例中,所述方法还包括:所述文件交换平台在分布式对象存储服务组件中为各系统分配唯一的桶,各所述桶用于存储对应的所述系统上传的文件,且各所述桶配置有唯一的文件目录结构,其中,目标系统允许对与其对应的目标桶进行读写操作,除所述目标系统以外的其他系统只允许对所述目标桶进行读操作,所述目标系统为多个所述系统的任意一个。

5、本申请的一些实施例中,所述第二系统有多个,所述第一消息队列有多个,所述第三封装接口有多个,所述第四封装接口有多个,所述第二系统与所述第三封装接口、所述第四封装接口一一对应,所述第二系统与所述第一消息队列一一对应,所述第一系统通过所述第二封装接口将第一事件消息异步地发送至所述文件交换平台的消息队列服务组件,所述消息队列服务组件通过事件驱动的方式将所述第一事件消息通过第一消息队列分发,包括:所述第一系统通过所述第二封装接口将多个所述第一事件消息异步地发送至所述文件交换平台的消息队列服务组件,所述消息队列服务组件通过事件驱动的方式将多个所述第一事件消息通过多个第一消息队列分发,其中,所述第一事件消息与所述第一消息队列一一对应;所述第二系统通过所述第三封装接口监听所述第一消息队列,并在监听到所述第一事件消息的情况下,通过所述第四封装接口从所述分布式对象存储服务组件中获取所述待交互文件,包括:多个所述第二系统分别通过对应的所述第三封装接口监听对应的所述第一消息队列,并在监听到对应的所述第一事件消息的情况下,通过对应的所述第四封装接口从所述分布式对象存储服务组件中获取所述待交互文件;其中,所述方法还包括:在多个所述第二系统通过对应的所述第四封装接口从所述分布式对象存储服务组件中获取所述待交互文件之后,多个所述第二系统分别处理获取到的所述待交互文件,得到对应的文件处理结果,并且通过所述文件交换平台为各所述第二系统提供的第五封装接口发送至所述文件交换平台的消息队列服务组件,所述消息队列服务组件通过事件驱动的方式将第三事件消息通过第三消息队列分发,以使得所述第一系统通过所述文件交换平台为所述第一系统提供的第五封装接口监听多个所述第三消息队列,且在监听到所述第三事件消息的情况下,异步地从所述第三事件消息中获取对应的所述文件处理结果,且所述第一系统异步地根据多个所述文件处理结果,异步地根据封装路由到指定交易,且处理所述指定交易。

6、本申请的一些实施例中,所述第二系统有多个,所述文件交换平台为第二系统提供第二封装接口和第三封装接口以使得所述第二系统通过所述第二封装接口监听所述第二消息队列,并在监听到所述第二事件消息的情况下,通过所述第三封装接口将所述待交互文件发送至所述分布式对象存储服务组件,包括:所述文件交换平台为第二系统提供第二封装接口和第三封装接口以使得所述第二系统通过所述第二封装接口监听所述第二消息队列,并在监听到所述第二事件消息的情况下,根据封装调用指定交易,基于所述指定交易通过所述第三封装接口将所述待交互文件发送至所述分布式对象存储服务组件;通过所述第三封装接口将所述待交互文件发送至所述分布式对象存储服务组件之后,所述方法还包括:多个所述第二系统通过对应的所述文件交换平台为所述第二系统提供的第四封装接口将第四事件消息通过第四本文档来自技高网...

【技术保护点】

1.一种系统间的文件交互方法,其特征在于,应用于文件交换平台,包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述第二系统有多个,所述第一消息队列有多个,所述第三封装接口有多个,所述第四封装接口有多个,所述第二系统与所述第三封装接口、所述第四封装接口一一对应,所述第二系统与所述第一消息队列一一对应,

5.根据权利要求1所述的方法,其特征在于,所述第二系统有多个,所述文件交换平台为第二系统提供第二封装接口和第三封装接口以使得所述第二系统通过所述第二封装接口监听所述第二消息队列,并在监听到所述第二事件消息的情况下,通过所述第三封装接口将所述待交互文件发送至所述分布式对象存储服务组件,包括:

6.根据权利要求1所述的方法,其特征在于,所述第一系统通过请求报文发送所述第一事件消息或者所述第二事件消息,所述第二系统通过返回报文响应所述第一事件消息或者所述第二事件消息,所述请求报文和所述返回报文采用统一的报文格式,所述统一的报文格式包括统一的报文头和统一的文件域,所述统一的文件域用于提供多个方式,多个所述方式包括非压缩方式和压缩方式,所述非压缩方式提供的文件信息包括如下至少之一:文件名、文件路径、文件唯一性和完整性的签名;所述压缩方式提供的文件信息包括如下至少之一:压缩包的文件名、压缩包的文件路径、压缩包的文件唯一性和完整性的签名以及所述压缩包内的文件名和文件相对路径,报文还提供有安全加解密机制和签名机制;

7.根据权利要求1至5中任一项所述的方法,其特征在于,

8.一种系统间的交互方法,其特征在于,包括:

9.一种系统间的交互方法,其特征在于,包括:

10.一种系统间的文件交互方法,其特征在于,应用于第一系统,包括:

11.一种系统间的文件交互方法,其特征在于,应用于第二系统,包括:

12.一种文件交换平台,其特征在于,包括第一处理单元和第二处理单元,

13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,在所述程序运行时控制所述计算机可读存储介质所在设备执行权利要求1至7中任意一项、或权利要求8、或权利要求9所述的系统间的文件交互方法。

14.一种电子设备,其特征在于,包括:一个或多个处理器,存储器,以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行权利要求1至7中任意一项、或权利要求8、或权利要求9所述的系统间的文件交互方法。

...

【技术特征摘要】

1.一种系统间的文件交互方法,其特征在于,应用于文件交换平台,包括:

2.根据权利要求1所述的方法,其特征在于,所述方法还包括:

3.根据权利要求1所述的方法,其特征在于,所述方法还包括:

4.根据权利要求1所述的方法,其特征在于,所述第二系统有多个,所述第一消息队列有多个,所述第三封装接口有多个,所述第四封装接口有多个,所述第二系统与所述第三封装接口、所述第四封装接口一一对应,所述第二系统与所述第一消息队列一一对应,

5.根据权利要求1所述的方法,其特征在于,所述第二系统有多个,所述文件交换平台为第二系统提供第二封装接口和第三封装接口以使得所述第二系统通过所述第二封装接口监听所述第二消息队列,并在监听到所述第二事件消息的情况下,通过所述第三封装接口将所述待交互文件发送至所述分布式对象存储服务组件,包括:

6.根据权利要求1所述的方法,其特征在于,所述第一系统通过请求报文发送所述第一事件消息或者所述第二事件消息,所述第二系统通过返回报文响应所述第一事件消息或者所述第二事件消息,所述请求报文和所述返回报文采用统一的报文格式,所述统一的报文格式包括统一的报文头和统一的文件域,所述统一的文件域用于提供多个方式,多个所述方式包括非压缩方式和压缩方式,所述非压缩方式提供的文件信息包括如下至少之一:文件名、文件...

【专利技术属性】
技术研发人员:徐福昌张子阳董锐焦文华徐林枫
申请(专利权)人:中邮理财有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1