1

我需要定期将包含的 webserver-log-like-files 从美国的 Windows 生产服务器传输到印度的 linux 服务器。这些文件的大小约为 4 MB,每分钟大约 1 个文件。在 Windows 中编写的文件和它们在 linux 机器中可用之间,我可能需要大约 5 分钟的延迟。我对这里的各种选项有点困惑,因为我对这种设计非常缺乏经验:

  1. 我正在考虑用 C#.NET 编写一个服务,该服务将定期存档、压缩并将它们发送到 linux 机器。这些文件非常可压缩。WinRAR 可以将 32 MB 的这些文件转换为 1.2 MB 的存档。这样应该可以解决网络传输速度问题。但是,我究竟如何将文件传输到 linux 呢?我可以使用 samba 在 windows 服务器上安装 linux 驱动器,或者我应该创建一个 ftp 服务器,或者将文件序列化为 POST 请求。哪一个会好?此外,我必须尽量减少 Windows 服务器上的负载。

  2. 而是在 linux 上安装 windows 驱动器。我可以使用 mount 命令,也可以在这里使用 samba(这两者的优缺点是什么?)。然后我可以在 linux 本身中编写压缩和复制部分。

我不相信互联网连接非常稳定,所以也应该有一个好的重试机制和故障保护。在这些情况下有哪些潜在的陷阱,以及我必须担心的其他问题?

谢谢,哈里

4

2 回答 2

3

RAR 不好。坚持使用 7zip 或 bzip2。使用 ssh 传输它,可能使用 rsync,因为它可以容忍链接故障。

于 2010-11-25T17:23:22.280 回答
2

WinSCP可以帮助您通过脚本将文件从Windows批量传输到Linux。然后配置 Windows 任务计划程序以定期运行脚本。

我一步一步从这篇文章中学到了:https ://techglimpse.com/batch-script-automate-file-transfer-winscp/

于 2019-03-25T07:09:19.280 回答