你們的項目Redis做了集群部署嗎? 我們有大量數據需要緩存,而單實例的容量畢竟是有限的,於是做了Redis集群部署。 采取的方案是什么,Codis還是Redis Cluster,為什么要選擇這個方案? 我們采用的官方Redis Cluster方案。Codis是一整套緩存解決方案 ...
HashMap的put操作做了什么 HashMap的是由數組和鏈表構成的,JDK 之后加入了紅黑樹處理哈希沖突。put操作的步驟是這樣的: 根據key值計算出哈希值作為數組下標。如果數組的這個位置是空的,把k放進去,put操作就完成了。 如果數組位置不為空,這個元素必然是個鏈表。遍歷鏈表逐一比對value,如果value在鏈表中不存在,就把新建節點,將value放進去,put操作完成。 如果鏈表 ...
2019-09-24 15:32 0 446 推薦指數:
你們的項目Redis做了集群部署嗎? 我們有大量數據需要緩存,而單實例的容量畢竟是有限的,於是做了Redis集群部署。 采取的方案是什么,Codis還是Redis Cluster,為什么要選擇這個方案? 我們采用的官方Redis Cluster方案。Codis是一整套緩存解決方案 ...
試圖操作一個由其他線程持有的對象鎖的資源時,將會處於阻塞狀態,但當一個線程再次請求自己持有對象鎖的資源 ...
Java 面試連環炮系列(三):synchronized怎么用的 面試連環炮系列(七):HashMap的put操作做了什么 面試連環炮系列(八):服務器CPU飆升100%怎么排查 面試連環炮系列(九):為什么ConcurrentHashMap是線程安全的 面試連環炮系列(十 ...
為什么ConcurrentHashMap是線程安全的 JDK1.7中,ConcurrentHashMap使用的鎖分段技術,將數據分成一段一段的存儲,然后給每一段數據配一把鎖,當一個線程占用鎖訪 ...
你們的項目為什么要用RabbitMQ? 消息隊列的作用是系統解耦、同步改異步、請求消峰,舉個下訂單的例子: 前端獲取用戶訂單信息,請求后端的訂單創建接口。這個接口並不直接請求訂單服務,而是首先 ...
為什么用HashMap? 簡述一下Map類繼承關系? 解決哈希沖突的方法? 為什么HashMap線程不安全? resize機制? HashMap的工作原理是什么? 有什么方法可以減少碰撞? HashMap中hash函數怎么是是實現 ...
你們的項目怎么使用kafka? 我們采用kafka進行日志采集,准確點說是ELK方案,即elasticsearch + logstash + kibana + kafka。通過Spring A ...
如何保證Redis高可用和高並發? Redis主從架構,一主多從,可以滿足高可用和高並發。出現實例宕機自動進行主備切換,配置讀寫分離緩解Master讀寫壓力。 Redis高可用方案具體 ...