现在有一项目需要与其他系统交换数据,经与对方联系,初步形成意向,对方将数据发送至一个FTP服务器上,我方只要到FTP中去取就行了。届时FTP服务器可能是由我主提供,但也有可能是业主提供。取到文件后要解析文件中的数据以提供给内部系统使用。
于是开发小组的三个老程序员就凑在一块商量了,A说:“我们最好找一个开源的由JAVA编写的FTP服务器软件,看他能否提供文件上传回调监听接口,如果有我们就实现一个文件上传完成后的监听回调直接将对方上传完的文件给处理了。如果没有回调监听机制就修改一个源代码了,也在一个文件上传完成后直接处理了,这样处理及时,效率也高”。这是个不错的主意!
我却有不同的看法,我主张利用业内免费的使用广泛的FTP服务器软件,如Vsftpd等,我们只是监听这个FTP服务器就行了,文件来了就处理,当然这是一种定时轮询的方式的实现。这样做有很大的优点一是快捷方便,拿来就能用;不用了解其API或源代码;二是这些软件都被广泛使用,其性能及稳定性都经受了考验;三是可能方便地切换至其他FTP服务器。