Ftp spring集成:针对不同配置的多个生产商的隔离并行处理

Ftp spring集成:针对不同配置的多个生产商的隔离并行处理,ftp,spring-integration,Ftp,Spring Integration,其基础是我们的客户将能够注册他们自己的端点。 第一次,我只为一个喜欢从ftp服务器下载文件并逐行处理文件然后调用HTTP WS…等的客户机实现了一种处理 处理过程如下所示: ftp入站通道适配器-->文件入站通道适配器--> int文件:拆分器-->int http:出站网关-->服务激活器 -->邮件出站通道适配器 问题是,新客户机喜欢注册自己的文件并分别处理相同的处理,因为如果一个客户机文件被中断,它不应该中断另一个客户机。 因此,每个下载源都应该单独处理,并且可以与另一个源并行处理 每个客

其基础是我们的客户将能够注册他们自己的端点。 第一次,我只为一个喜欢从ftp服务器下载文件并逐行处理文件然后调用HTTP WS…等的客户机实现了一种处理 处理过程如下所示:

ftp入站通道适配器-->文件入站通道适配器--> int文件:拆分器-->int http:出站网关-->服务激活器 -->邮件出站通道适配器

问题是,新客户机喜欢注册自己的文件并分别处理相同的处理,因为如果一个客户机文件被中断,它不应该中断另一个客户机。 因此,每个下载源都应该单独处理,并且可以与另一个源并行处理

每个客户端都应指定其ftp服务器详细信息、http web服务和电子邮件详细信息

有没有简单/复杂的方法可以让我们基本上为端点链进行运行时实例化


谢谢

请看一下问题的答案

一般来说,我们有一个示例,它允许您“将每个适配器放在一个子上下文中,该子上下文将消息发送到主上下文中的通道”


请按照此处的所有说明进行操作,您的动态逻辑应该很好。

请查看问题的答案

一般来说,我们有一个示例,它允许您“将每个适配器放在一个子上下文中,该子上下文将消息发送到主上下文中的通道”


请按照此处的所有说明进行操作,您的动态逻辑应该很好。

每个客户端都应该在单独的线程中处理,上面的链将为每个新客户端实例化。所以我知道我将为每个客户端创建一个没有主上下文的上下文,因为没有一个用于所有客户端的公共通道。他们只需要经过同样的处理,每个人都有自己的仪表。这是可能的吗?是的,您可以不使用“公共通道”,但原则仍然是一样的:您构建子ctx并提供所需的
环境
并基于该环境引导流。当然,每个这样的子实例将生活在自己的线程中。您还可以查看SpringIntegrationFlow项目:我认为SpringIntegrationFlow项目是适合我的案例的解决方案。但我注意到在这个流项目中,每个流都是通过一个出站网关调用的,该网关应该有一个输入通道。在我的例子中,流包含如上所述的处理,它以ftp入站通道适配器开始,因此输入通道将是无用的,如果我在流中声明它而不使用它,它将产生问题?好吧,我理解你的观点。您是对的,
spring集成流
不适合您的需求。那么,让我们回到关于每个客户端的“子上下文”的原始答案。很抱歉,我不知道如何为我的流创建子上下文,从ftp inbound-adapter开始,是否有一个示例来解释它。因为动态ftp适配器示例用于出站适配器。这是相同的逻辑吗?每个客户端都应该在一个单独的线程中处理,上面的链将为每个新客户端实例化。所以我知道我将为每个客户端创建一个没有主上下文的上下文,因为没有一个用于所有客户端的公共通道。他们只需要经过同样的处理,每个人都有自己的仪表。这是可能的吗?是的,您可以不使用“公共通道”,但原则仍然是一样的:您构建子ctx并提供所需的
环境
并基于该环境引导流。当然,每个这样的子实例将生活在自己的线程中。您还可以查看SpringIntegrationFlow项目:我认为SpringIntegrationFlow项目是适合我的案例的解决方案。但我注意到在这个流项目中,每个流都是通过一个出站网关调用的,该网关应该有一个输入通道。在我的例子中,流包含如上所述的处理,它以ftp入站通道适配器开始,因此输入通道将是无用的,如果我在流中声明它而不使用它,它将产生问题?好吧,我理解你的观点。您是对的,
spring集成流
不适合您的需求。那么,让我们回到关于每个客户端的“子上下文”的原始答案。很抱歉,我不知道如何为我的流创建子上下文,从ftp inbound-adapter开始,是否有一个示例来解释它。因为动态ftp适配器示例用于出站适配器。这是同样的逻辑吗?