前者听起来不错,但我有以下担忧:
另一种方法可能是后者:
N
请注意,连接数量将随着示例数量的增加而成比例增加。在两者之外,可以引入固定的BLPOP执行器池,但如果一些redis列表空闲,这很容易成为瓶颈。
BLPOP
gopyfrb31#
I/O多路传输并不忙于等待
BLPOP命令是发送到Redis服务器的实际命令,它涉及I/O多路传输,并且不忙于在客户机代码中等待
我看不出忙着等待有或没有线程屈服有什么意义
作为替代,我建议使用Redis支持的发布/订阅功能,以防您需要等待List为空之外的其他一些事件
1条答案
按热度按时间gopyfrb31#
I/O多路传输并不忙于等待
BLPOP命令是发送到Redis服务器的实际命令,它涉及I/O多路传输,并且不忙于在客户机代码中等待
我看不出忙着等待有或没有线程屈服有什么意义
作为替代,我建议使用Redis支持的发布/订阅功能,以防您需要等待List为空之外的其他一些事件