最近研究如何将POCO网络库应用在高并发项目中,发现POCO在windows下面使用select模型,不适合做高并发的TCP服务器。
当然用作HTTP服务器是可以的,因为HTTP服务器实现是这样的。
通过线程池来管理多个HTTP连接,当并发连接超过最大的线程池数量的时候,连接排队等待线程处理中,只要处理速度足够块,高并发请求也可以响应,因为HTTP连接处理完成后,就断开了。
但是如果是需要长连接,这种处理过程就无法满足了,而提供的select模型也不能应用,当然在linux下面可以使用epull,但是设计上面就不现在这个模型了,因为设计的HTTP服务器都不需要epull进行处理
# 结论
POCO适合做HTTP服务器,但是不适合做TCP长连接高并发的服务器。
博客探讨了POCO网络库在Windows环境下使用select模型处理高并发TCP长连接的不足,指出其更适合HTTP服务器场景。由于HTTP服务器通常采用线程池管理连接,而TCP长连接需要更高效的模型如Linux下的epoll。结论是,POCO不适合用于TCP长连接的高并发服务器。
996

被折叠的 条评论
为什么被折叠?



