只是我的在學習過程當中的一些梳理UML圖, 有錯誤的地方請多指教.緩存
JdHotKey架構圖
Client端啓動流程
Client端Netty消費流程
Worker端Netty消費流程
Worker端消費隊列流程
通常來講Netty和消費者的線程是各佔CPU核數50%.架構
簡單使用流程案例
Worker只負責統計是否HotKey, 並推送到Client端, Value是由Client端本身更新進去的學習
public String get(String key) { // getValue時, 若是本地緩存沒有會Push到對應的Worker (每500ms push一次) Object object = JdHotKeyStore.getValue(key); if (object != null) { System.out.println("is hot key"); return object.toString(); } else { String value = getFromRedis(key); // 若是是hotKey, 會把value寫到本地緩存裏 JdHotKeyStore.smartSet(key, value); return value; } }