有没有了解epoll模型的,进来谈谈,最好是UDP的。

dbkcpp 2008-10-21 03:18:39
大家好,我最近在做一个im系统,支持udp和tcp协议,开发环境是linux,模型打算采用epoll,我对采用tcp的epoll模型比较熟悉,但是对于udp的不太熟,因为udp服务器端只是始终有一个套接字资源,而不像tcp,每次accept之后产生一个新的套接字资源,这样这个新产生的套接字资源也可以进行侦听,而udp始终都是一个套接字,面对众多的用户连接,我感觉应该不能满足需要的,有没有有过这方面经验的介绍下啊
...全文
591 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
jacketcyh 2012-06-19
  • 打赏
  • 举报
回复
.....
ro360 2011-12-02
  • 打赏
  • 举报
回复
请问楼主你最后实现了吗?你是怎么实现的?可以分享下经验吗?
linyangwo2008 2010-11-01
  • 打赏
  • 举报
回复
用udp+epoll是为了提高cpu的利用率
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 xhs_lh04 的回复:]
另外如果用UDP,为什么要用EPOLL?
[/Quote]
那如果是单纯的udp协议,在linux下,做服务器端,应该采用什么方法呢?以前没有做过udp的服务器端!
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 xhs_lh04 的回复:]
另外如果用UDP,为什么要用EPOLL?
[/Quote]
因为是服务器同时接受udp和tcp的连接,所以在一个端口我绑定了两个套接字,一个是tcp的一个是udp的
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
嗯,多谢楼上的兄弟。
xhs_lh04 2008-10-21
  • 打赏
  • 举报
回复
另外如果用UDP,为什么要用EPOLL?
xhs_lh04 2008-10-21
  • 打赏
  • 举报
回复
可以用libevent库,里面有包装epoll
很少用使用UPD,LINUX EPOLL用TCP我做过,UDP没试过,理论上应该可以的,可以探讨
帅得不敢出门 2008-10-21
  • 打赏
  • 举报
回复
支持下.
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
嗯,楼上的说的很有道理,关键在于我的服务器程序是同时支持tcp和udp的所以采用了epoll。
lala_benben 2008-10-21
  • 打赏
  • 举报
回复
很少看见UDP还用EPOLL的。。。这样就失去了EPOLL的优势
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
thanks!
Longinc 2008-10-21
  • 打赏
  • 举报
回复
帮顶下
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
大家一起来探讨探讨啊!
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
我现在有个疑惑就是:因为我做的是服务端程序,所以负载量比较大,而udp协议做服务器端编程的时候,
无论与多少个客户通讯,他都始终是一个套接字资源在进行通讯,这样的话,效率。。。。。。
dbkcpp 2008-10-21
  • 打赏
  • 举报
回复
我自己顶

64,701

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧