1 HashMap在put的時候,插入的元素超過了容量(由負載因子決定)的範圍就會觸發擴容操做,就是rehash,這個會從新將原數組的內容從新hash到新的擴容數組中,在多線程的環境下,存在同時其餘的元素也在進行put操做,若是hash值相同,可能出現同時在同一數組下用鏈表表示,形成閉環,致使在get時出現死循環,因此hashMap是線程不安全的。 2 經過Collections.synchronizedMap()來封裝HashMap的方法
隊列適用於哪些開發場景,何時你會考慮使用隊列?常見的隊列,你會如何選擇前端
Spring裏用到了哪些常見的設計模式?請詳述使用場景。java
線程爲何不是以run方法運行,而是start方法?mysql
1 1.主從模式:可進行讀寫分離,可分擔同步的壓力,可用性不過高,master宕機須要手動配置從節點轉爲master 2 2.cluter模式: 引入了主從模式,每一個節點存儲不一樣的內容 3 3.哨兵模式:主從模式升級版,主節點掛掉會自動將從節點轉爲主節點,可用性更高
1 1:申請SSL證書 2 2:讓本身的服務器支持SSL,nginx須要配置SSL模塊和https的跳轉 3 3:開放443端口