我在这里工作网关模拟器,网关的目的是连接数据中心,并在数据中心请求时将视频流到数据中心。
在这里,网关模拟器可以模拟1000个gateway.that,这意味着每个网关都会连接到data center.Here,我很困惑如何管理网关中这么多的socket。
在c++ select可用于此目的,做多路分解,与data center.since的连接,这里我可能要创建1000个连接select是不合适的。
我想通过使用acceptor.async方法来管理服务器中的多个客户端,处理程序将会使用这个方法。
但由于网关是客户端应用程序
如何管理多个连接,以便从数据中心获取每个连接的请求。
网关可以在windows和linux上运行。
发布于 2011-03-25 18:23:56
如果这是我要解决的问题,我会首先尝试使用libevent。Libevent自动为每个平台选择“最佳可用的”机制,无论是epoll、kqueue还是select,并允许您专注于您的程序的独特之处。
发布于 2011-03-25 18:22:56
WSAEventSelect
epoll
kqueue
发布于 2011-03-25 18:40:55
我对Boost.Asio不太确定--这可能是可能的,但我必须对其进行研究。Boost.Asio似乎没有任何调用WSAWaitForMultipleEvents的实现,所以我不知道是否存在对您所需内容的现有支持。
至少在Windows中,WSAWaitForMultipleEvents是你的答案。http://msdn.microsoft.com/en-us/library/ms742219(v=vs.85).aspx
https://stackoverflow.com/questions/5431130
复制相似问题