我做了一个服务器程序,以提供客户端下载文件,用TCP连接.假设服务器最大支持2500条TCP连接.
客户端的要求是,假设服务器比较空闲,也就是剩下的连接数还够的情况下,就应该多建立几条连接,以保证下载速度.
问题1: 建立几条连接比较合理.          (现在我暂时定的5个连接)
问题2: 如何判断还能建立多少连接.      (现在是连接上服务顺后.服务器返回一个还剩下的连接数,用剩下的连接数除以200,再取它与5的最小值)
由于客户端不止从服务器下载,还有P2P的功能.可从其它客户端下载.所以,我觉得在下载总速度达到某个值后,可以断开一些与服务器的连接.好让更多的客户端从服务器下载.
因为我下载的视频文件,下载后会播放它的.所以总速度的阀值我是用的视频的平均码率.
当客户端与服务器的连接中,有一些速度比较小的,比如4分钟内速度都小于5K/S,那么就删除这条连接.
问题3: 小于多少K,多长时间,定多少比较合适. (现在的做法是4分钟小于5K/S删除一个,8分钟小于5K/S又删除一个等等...)我取的这些值不太科学.我的目的是想让一台服务器能最大限度的支持更多的客户端下载.提供意见者有分!