起因今天看到項目中的 kafka 客戶端包裝結構體的獲取是單例模式 br 單例的實現是老生常談的問題了,懶漢餓漢線程安全,因爲看到項目中寫的還是有些問題,網上 go 單例實現的搜索結果比較少經測試也並不靠譜,所以在這記錄下現狀當前有的項目直接使用 Mutex 鎖,有的就直接判斷 nil 則創建,對於前者,每次都加鎖性能差,對於後者則會出現多個實例,也就不是單例了改進進而想要改進一下,在這不討論餓漢 ⌘ Read more
起因今天看到項目中的 kafka 客戶端包裝結構體的獲取是單例模式 br 單例的實現是老生常談的問題了,懶漢餓漢線程安全,因爲看到項目中寫的還是有些問題,網上 go 單例實現的搜索結果比較少經測試也並不靠譜,所以在這記錄下現狀當前有的項目直接使用 Mutex 鎖,有的就直接判斷 nil 則創建,對於前者,每次都加鎖性能差,對於後者則會出現多個實例,也就不是單例了改進進而想要改進一下,在這不討論餓漢 ⌘ Read more