请教xml大数据量传输的问题
1个回答
展开全部
你可以使用epoll模型来代替线程进程,然后将需要传输的数据拆分成多个部分,同时处理。数据发送前可以做简单的压缩以加快传输速度,数据处理和数据发送的epoll子程一定要分开。epoll支持多CPU,能够大大加快处理速度。
双网卡是下层的问题,和你使用怎样的编程方式无关,你也不用管,系统会自动为你的网络程序分配网卡资源。你起了多线程之后,用linux命令查看当前网络流量利用了多少就可以。如果没有完全利用到,再增加网卡也于事无补。
至于交换机,与其用两个,倒不如换用一个速度更快的。不过据我的经验,网络程序,瓶颈往往在电脑而不在交换机。
控制数据如果很重要但是量又不大,最好用TCP传输,毕竟你局域网,说白了TCP效率能拖累你多少。单独起TCP处理控制数据,一般的网络程序比较常用这种方式。
至于传输的数据,如果确实需要UDP传输,建议你到网上搜集一些冗余传输算法,这些算法能满足你在使用UDP的同时,不丢失数据,不过就我个人的经验,在局域网里,UDP比TCP,在数据传输速度的提升很有限。
双网卡是下层的问题,和你使用怎样的编程方式无关,你也不用管,系统会自动为你的网络程序分配网卡资源。你起了多线程之后,用linux命令查看当前网络流量利用了多少就可以。如果没有完全利用到,再增加网卡也于事无补。
至于交换机,与其用两个,倒不如换用一个速度更快的。不过据我的经验,网络程序,瓶颈往往在电脑而不在交换机。
控制数据如果很重要但是量又不大,最好用TCP传输,毕竟你局域网,说白了TCP效率能拖累你多少。单独起TCP处理控制数据,一般的网络程序比较常用这种方式。
至于传输的数据,如果确实需要UDP传输,建议你到网上搜集一些冗余传输算法,这些算法能满足你在使用UDP的同时,不丢失数据,不过就我个人的经验,在局域网里,UDP比TCP,在数据传输速度的提升很有限。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询