在我的上一篇Status 2的文章中给大家简单介绍了Stratus 2 一对多视频直播,今天给大家演示一下如何在NetGroup中共享文件。在原来的Strtuas 1 中,我们也可以发送文件,不过发送的方式很单一,只能通过NetStream.send的方式将文件发送给选定的对象。这样的文件发送问题很多。
- 发送过程中无法知道文件发送的情况。
- 很麻烦才可以将文件拆分发送。
- 发送的过程中很容易造成数据包丢失。
- 一次只能发送给一个用户,如果要发送到第二个用户,需要额外的连接。
以上这些问题因为Stratus 1 只支持点对点的传输,所以这些问题很难解决。而现在的Stratus 2,因为支持了Application level Multicast (应用层多播,关于应用层多播是什么因为不会影响我们的教程,这里就不多解释了,有兴趣的朋友可以问下google),所以我们的文件发送变得更加的强大,或者说更加的P2P,具体来说有这些优点。
- 支持文件拆分发送。你可以将你的文件拆分至N份。
- 多用户间共享文件块 。A用户发送文件,B用户接收,C用户再接收时C用户从A与B中接收
- 相对稳定的传输 (因为Stratus 2 现在也是Beta阶段,我也没有试过真实环境下大量用户共享文件的情况所以稳定情况有待考证)
- 文件传输反馈。更方便的监控传送的过程
了解了以上这些,我们来看下面这个例子,代码我是在前一个例子的基础上添加,所以对已有的代码就不重复解释,只解释文件发送相关的代码。
