此答案來自群員,感謝群員支援。
有些題目,表面叫你設計乙個連線池,背地裡想考你連線池的原理。
面試官你好,如果讓我設計乙個連線池,首先我會設計乙個[核心執行緒數],用來常駐記憶體中,迅速響應任務進行。再設計乙個[最大可擴充套件執行緒數]。用來當任務增多的時候最多擴充套件執行緒的數量,當達到最大執行緒數的時候,仍有任務來申請執行緒,我們需要有乙個具體的[拒絕策略]來拒絕這些任務的申請,當任務很少的時候,核心執行緒數可以應對的時候,我們還需要乙個[除核心執行緒數以外其他執行緒的保留時間],最好還要有乙個[任務佇列]。這樣可以存放著,我們那些還沒處理但是沒有執行緒去處理的任務。甚至我們還可以設計乙個[工廠],用於生成執行緒時指定名字
執行緒池7大引數:核最生單任線拒
設計乙個可靠的連線池
在應用中連線池的使用非常普遍,如訪問資料庫,redis等等網路產品的client都整合了連線池機制 由於最近在編寫微服務閘道器因此涉及到連線池的編寫,在這裡分享一下實現乙個可靠連線池的心得。其實編寫乙個連線池並不因難,基礎的stack結構就能滿足需要 但在設計的時候有些情況是需要考慮的,怎樣使連線池...
如何實現乙個連線池?
目錄前言 什麼是連線池?為什麼需要連線池?怎樣做乙個連線池?高階連線池 推薦原始碼 2w1h 是技術領域中一種非常有效的思考和學習方式,即what why和how 堅持 2w1h 可以快速提公升我們的深度思考能力。今天我們通過 2w1h 方式來討論 連線池 什麼是連線池 what 為什麼需要連線池 ...
實現乙個redis連線池
jedis連線引數設定 redis伺服器ip redis.ip 169.254.130.122 redis伺服器端口號 redis.port 6379 redis訪問密碼 redis.password test123 與伺服器建立連線的超時時間 redis.timeout 3000 jedis池引數...