UDP-UDP 并发

发布于 2017-01-26 16:19:12 字数 53 浏览 1248 评论 4

我写了一个UDP服务器,服务端口固定,需要能力接受不同客户端的大量的并发数据,应该如何是实现

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

虐人心 2017-10-23 23:44:38

可以参考一下UNIX 网络编程第一卷(第三版是482页),里面有讲UDP并发的实现,相对TCP来说要复杂,所以不常用。

瑾兮 2017-07-13 17:48:52

upd一般没有使用并发的,因为client不用关注数据是否真正到达了,只是发出去就完事了

虐人心 2017-06-08 18:00:08

多CPU才有并行。
假设你的服务器上有8个逻辑CPU,那么你应该开启1个线程专门负责(select(poll)+recvmsg)收包,然后分发给7个线程处理。

分发线程和处理线程之间的数据传递可以采用免锁的单生产者单消费者队列就可以了。
至于如何分发要根据业务需要确定,比如根据简单轮转、根据客户端id分发等等。

信息不多,不知道你的业务模型,以上思路,仅供参考。

虐人心 2017-04-11 07:57:14

如果真想做的话,服务器端要使用多线程(最好是线程池)为每个客户端的请求进行处理.

http://book.51cto.com/art/200902/109684.htm 这里有一个讲TCP 多线程处理的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文