Spring集成-具有不同文件夹的动态multible sftp / ftp会话

问题描述 投票:1回答:1

我不太确定spring集成是否适合我。

我想在数据库中输入连接数据(SFTP / FTP),并使用预定的时间来获取数据。

但是我现在有几个问题,

  1. 我可以在春季集成时动态添加SFTP / FTP作业吗?

  2. 我可以群集弹簧集成作业吗?

我发现有几种解决方案可以进行多个SFTP轮询,但是它们不起作用。例如:spring integration : solutions/tips on connect multiple sftp server?

感谢您的反馈。

spring ftp spring-integration sftp
1个回答
0
投票

您可以使用Spring Integration Java DSL动态流来做到这一点:https://docs.spring.io/spring-integration/docs/current/reference/html/dsl.html#java-dsl-runtime-flows

所以:

  1. 您执行JDBC入站通道适配器以从数据库中轮询设置:https://docs.spring.io/spring-integration/docs/current/reference/html/jdbc.html#jdbc-inbound-channel-adapter
  2. 您使用IntegrationFlowContext创建动态流,将SFTP服务器连接工厂和远程目录填充到SFTP入站通道适配器中并启动该动态流:https://docs.spring.io/spring-integration/docs/current/reference/html/sftp.html#sftp-inbound

另一种选择是考虑使用RotatingServerAdvicehttps://docs.spring.io/spring-integration/docs/current/reference/html/sftp.html#sftp-rotating-server-advice

为了使这种解决方案在群集中更可靠,您应该使用配置了共享SftpPersistentAcceptOnceFileListFilterMetadataStorehttps://docs.spring.io/spring-integration/docs/current/reference/html/system-management.html#metadata-store

此示例演示了一种如何将动态流用于TCP / IP的技术,但原理相同:https://github.com/spring-projects/spring-integration-samples/tree/master/advanced/dynamic-tcp-client

也请参见此SO线程:how can i connect with different SFTP server dynamically?

© www.soinside.com 2019 - 2024. All rights reserved.