使用Akka,我们可以从远程系统复制文件



在我的系统上,我正在使用Akka框架。我需要从远程系统复制文件。我可以在我的主系统中使用Akka从远程系统复制所需的文件吗?

我可以使用akka

是一个相当广泛的问题。

  • 您可以将文件发送为Actor消息吗?不,理论上您可以,但我不建议这样做。消息应该很小而快速,不是潜在的大文件。还有一个(可配置的(大小限制,远程消息,超过限制的消息将不会发送。
  • 您可以创建一个侧通道并使用例如akka http流从一个节点到另一个节点的文件?是的,您肯定可以。

如果您一定想为此使用Akka,我会考虑使用Akka-streams:

http://doc.akka.io/docs/akka/current/java/java/stream/stream-io.html

因此,您可以在源主机上运行文件 -> TCP流,而TCP->在目标主机上的文件流。

但是,这种方法非常低级别和容易出错。我强烈建议为此使用一些更高的技术,例如kafka与kafka connect。

示例此处:

https://howtopramcom.xyz/2016/07/10/apache-kafka-connect-example/

在这里(我会跳过Avro部分,然后您不需要模式注册(:

http://docs.confluent.io/current/connect/quickstart.html

最新更新