linux - 以最快的方式将文件发送到远程服务器

标签 linux ftp network-protocols socketserver

我有一个单独的服务器来处理上传到我的面向 Web 的主服务器的媒体。现在我使用 FTP 将文件上传到它,但问题是为了确保文件完成上传我有一个超时运行,这增加了整体处理时间的延迟。我似乎无法让它等待少于 5 秒并仍然保证接收媒体并且这种延迟不再是可以接受的。所以:

有没有更好的方法来干净地实现它?我考虑过坚持使用 FTP 并在初始上传后发送另一个文件,这将表明它已完成,但每次上传都会有两次上传 = 昂贵。我考虑过的另一个选择是实现一个自定义服务器,它只获取一个内容长度 header ,进行一些身份验证,然后接收文件并在文件准备好后立即开始处理。套接字编程似乎并不太吓人,但我对发送二进制文件和不同格式有些担心,这是一个有效的问题吗?还有我可以实现的任何其他协议(protocol)来做到这一点,而不是重新发明轮子吗?类似于 FTP,但需要一些验证。

如果您能分享任何指示或技巧,我很高兴,谢谢!

最佳答案

我建议你使用rsync。这在 ssh 上运行,将移动整个目录/文件层次结构,进行增量复制,简而言之,您可能想要的一切。

关于linux - 以最快的方式将文件发送到远程服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21393879/

相关文章:

network-protocols - 运动鞋网上的自动消息路由

linux - 如何从软件工具向 Zynq 中的 AXI-Stream 发送数据?

c# - 如何解决 C# 应用程序中的 FTP 超时

c++ - FTP文件上传

CURL命令行工具-从FTP服务器删除文件

java - InetAddress 无法解析为类型

linux - 在 linux 中递归地杀死带有子进程的 R 进程

linux - 如何在CentOS 5.6中配置多个虚拟声卡?

java - linux 父进程可以保护子进程免受信号影响吗?

parsing - 基于套接字的应用协议(protocol)解析的常规方法