我们系统要定时将一些文件 发送 给另一个后台系统,请问用什么方式比较好?
我想到的方式:
1)http传输文件
2)ftp传输
两台服务器之间的文件通过java程序进行互相传递对吧?其实有很多方式;
我以一个比较好的linux软件给你举例吧!
“rsync”
命令格式:
rsync [参数] <源地址(用户名@IP地址或主机名)>:<文件路径> <目的地址(用户名 @IP 地址或主机名)>:<文件路径>
例:rsync /home/work/source.txt work@192.168.0.10:/home/work/ #把本地的source.txt文件拷贝到192.168.0.10机器上的/home/work目录下
步骤:
1、linux安装rsync
2、编写一个可执行的sh脚本,脚本内容就是rsync的文件复制命令;
3、java程序编写程序,调用sh脚本;
就这么简单!
如果两个系统都是你们自己的,那直接搭一个文件服务器,文件直接上传到指定目录,然后发送一个mq给另一个系统,或者调另一个系统提供的接口,告诉它有文件上传了,另一个系统自己去指定目录下读取,这样两个系统间就可以解耦了,而且文件也不会丢,另一个系统慢慢读,读几次都行
方式(在你想到的基础上进行添加)
3、sftp,
这是具体实现的方式。
1、第一位使用rsync,也是可行;这个有点重;
2、第二位说的,使用mq作为过渡系统,这是可行的,我也赞成这种,主要考虑的问题是** 解耦__**;
3、至于mq,看你怎么选择,都是可以的;
4、还有其他疑问,都可以来交流。