+ -
当前位置:首页 → 问答吧 → 请教下UDP通信

请教下UDP通信

时间:2011-11-25

来源:互联网

UDP服务器在公网A上有台服务A:192.168.1.101 8080,在公网B上有台服务B:192.168.1.102 8081

请教下服务器A和B应该要用怎么样的机制通信才能短时间内处理大量的数据,如100个客户端直接根服务器A通信,1秒钟A能接收处理8000条信息,同时,A需要把8000条中的6000条转发给服务器B,那么A要以怎么样的机制发给服务器B呢?

个人方案:直接发送,测试存在的问题:A发给B6000条信息,B接收完6000条信息的时间大概为60秒,平均1秒能接收到100个

求解决方案。。。1对1发送的时候怎么能短时间发送出大量的消息,需要在A上开创建100个socket,开100个端口么??

作者: xiaoguailong3   发布时间: 2011-11-25

iocp

作者: kiven2010   发布时间: 2011-11-25

现在就是IOCP,看好是服务器对服务器的
引用 1 楼 kiven2010 的回复:
iocp

作者: xiaoguailong3   发布时间: 2011-11-25

IOCP个毛,这东西明显是发送太快,UDP数据要丢包的。
1对1发送的时候怎么能短时间发送出大量的消息 ,你可以查看下UDT的实现(用例子,应该可以把你的带宽跑满),即发送时要有确认。可靠传。
当然如果这个已经解决,处理消息过慢的话;应该当把接受消息本身弄到一个队列中;然后由处理线程读取处理,后删除对列。即 消息接受线程 为生产者,消息处理线程为消费者,当有些消息处理比较慢时,可以为它专门开相应的线程处理。这样可以加快处理的速度

作者: brightLee   发布时间: 2011-11-25