使用netty进行文件传送

  1. 将发送文件信息(文件名,文件大小)与文件内容的操作 放在一个线程里,收到回复后通知future

  2. netty的chunkedinput 写操作是原子的,因此仿照ChunkedFile的做法,继承ChunkedInput,将文件名和文件大小封装成原子的,但是这种方式不容易实现收到对方回复后通知的功能。因为提交虽然是原子的,但是提交顺序不确定,因此如果需要根据对方的返回结果进行通知future,就必须在发送的时候多发送一个字节,标示不同的请求。

两种方式都是单独开启一个文件接收端口。经过分析发现,把文件传送和普通的协议内容放在一个socket上传输实现起来很麻烦,而且文件传送比较慢,会影响正常的消息发送。

删除了第二种。该进了第一种。