每日一题

Scroll Down

昨天每日一题:设计一个连接池
此答案来自群员,感谢群员支持。

有些题目,表面叫你设计一个连接池,背地里想考你连接池的原理。

面试官你好,如果让我设计一个连接池,首先我会设计一个[核心线程数],用来常驻内存中,迅速响应任务进行。再设计一个[最大可扩展线程数]。用来当任务增多的时候最多扩展线程的数量,当达到最大线程数的时候,仍有任务来申请线程,我们需要有一个具体的[拒绝策略]来拒绝这些任务的申请,当任务很少的时候,核心线程数可以应对的时候,我们还需要一个[除核心线程数以外其他线程的保留时间],最好还要有一个[任务队列]。这样可以存放着,我们那些还没处理但是没有线程去处理的任务。甚至我们还可以设计一个[工厂],用于生成线程时指定名字

线程池7大参数:核最生单任线拒

今天每日一题:工作中如何解决MQ消息堆积和消息重复的问题?(群员面试真题)