只是我的在学习过程当中的一些梳理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; } }