2013-12-13 24 views
0

我试图在linux中制作rtsp服务器,我认为服务器自动选择单个或多个线程。如你所知,RTSP在服务器和客户端之间有很多数据包。 (视频,音乐像实时数据)使用epoll的rtsp服务器是无意义的吗?如果有很多客户端

所以,我认为epolling不是好的选择。因为在这种情况下每次都发生事件。

此外,我听说每个线程一个套接字并不好。由于相同的原因,这也不是好的选择。

我看到了有关这方面的示例代码,没有人在一个线程中使用epolling或multi socket。 (可能只是示例代码)

是不是?使用epolling的rtsp服务器毫无意义?

+0

要在一台服务器上处理多个客户端/服务,您需要一台状态机。如果您为每个客户端使用一个线程,则操作系统通过为每个客户端<>服务器线程提供它自己的堆栈,为您提供状态机。如果你使用非阻塞设计,你必须在你自己的代码中实现状态机。 –

+0

感谢您的建议 – 101110101100111111101101

回答

0

这取决于很多事情,比如你需要服务多少个客户端?如果您正在使用家庭服务器并同时为最多10个客户端提供服务,则最好每个客户端使用一个线程。尽管民意调查更有可能是更好的选择,但对于50名客户来说,情况可能仍然如此。对于10,000个客户端,在边缘触发模式下使用epoll可能会更好。

我刚刚发布了一篇文章比较不同的轮询方法:http://www.ulduzsoft.com/2014/01/select-poll-epoll-practical-difference-for-system-architects/ - 检查它。

+0

对不起!谢谢!!! – 101110101100111111101101

相关问题