我们每分钟向多个服务器发送数百个文件。
目前,我们正在生成仅包含sftp命令的shell脚本(通过java作为文件),并将它们作为shell脚本执行。我们使用java的原因是根据目标路径和目标服务器来组织文件。最后,对于每个目标服务器,我们都有一个shell脚本。
现在我在想,如果我通过java代码本身发送文件,而不是生成脚本并执行它,会不会更高效、更快。
目前,为4台服务器生成脚本需要4到5秒。因此,实际的sftp的执行从第5秒开始,并以非常快的速度结束(基于文件数)。如果我切换到像JSch这样的java sftp,它会和shell脚本中的sftp一样快还是更慢?
发布于 2016-04-02 17:27:03
这取决于你想要实现什么。如果该解决方案的维护也是一个因素,我建议将apache-camel与ftp组件https://github.com/apache/camel/tree/master/examples/camel-example-ftp一起使用。为您提供控制和灵活性。不生成shell脚本。最重要的是,你可以围绕它写一个应用程序(如果需要),或者让它成为已经存在的应用程序的一部分。
https://stackoverflow.com/questions/36371306
复制相似问题