我想知道在使用Apache Commons Pool实现池时,LIFO堆栈与FIFO队列的优势是什么。为了避免获得超时连接(在开始时打开但在高峰时间之前没有使用)并且可能避免必须在空闲时进行测试,将不会更加“安全”默认为FIFO(
)我很感激任何意见。非常感谢你。
答案 0 :(得分:1)
LIFO(默认)的一些优点可以是
这些是否有益取决于池化对象是什么,负载分布是什么,将工作负载集中在少数实例上的重要性以及重用最近使用的资源有多么重要。< / p>
使用LIFO可能会导致某些实例在池中闲置较长时间,这是正确的。如果保持池被削减并集中负载不是优点,则超时是一个问题,并且负载分配使得FIFO访问工作以保持实例新鲜,该配置可以是有意义的。这就是配置选项的原因。