memcache集羣環境下緩存解決方案,是一個高性能的分佈式的內存對象緩存系統,經過在內存庫裏維護一個統一的巨大的hash表,存儲各類數據,包括圖像、視頻、文件以及數據庫檢索結果等。
簡單的說就是講數據調用到存儲中,後從內存中讀取,從而大大提升讀取速度。memcache是這個項目的名稱,而memcached是它的服務端的主程序文件名。數據庫
一、初始化memcache緩存
//初始化memcache public static void initMemcache(){ String[] servers = {"127.0.0.1:11211"}; SockIOPool pool = SockIOPool.getInstance(); pool.setServers(servers); pool.setFailover(true); pool.setInitConn(10); pool.setMinConn(5); pool.setMaxConn(250); pool.setMaintSleep(30); pool.setNagle(false); pool.setSocketTO(3000); pool.setAliveCheck(true); pool.initialize(); }
二、建立緩存markdown
/** * 建立緩存 * @param key 鍵 * @param value 值 */ public static void createMemcache(String key, Object value){ //建立client對象 MemCachedClient mclent = new MemCachedClient(); //建立緩存 mclent.set(key, value); }
三、刪除指定緩存分佈式
/** * 刪除指定緩存 * @param key 鍵 */ public static void deleteMemcache(String key){ MemCachedClient mclent = new MemCachedClient(); mclent.delete(key); }
四、獲取緩存ide
/** * 獲取緩存 * @param key 鍵 * @return 值 */ public static Object getMemcache(String key){ MemCachedClient mclent = new MemCachedClient(); Object value = mclent.get(key); return value; }
五、獲取多個緩存memcached
/** * 獲取多個緩存對象 * @param keys * @return */ public static Map<String, Object> getManyMemcache(String[] keys){ MemCachedClient mclent = new MemCachedClient(); Map<String, Object> m = mclent.getMulti(keys); return m; }
六、清空指定類型的緩存性能
/** * 清除指定類型的緩存 * @param str * @return */ public static boolean flashLMemcache(String[] str){ MemCachedClient mclent = new MemCachedClient(); mclent.flushAll(str); return true; }
七、清空全部緩存測試
/** *清空緩存 * @return */ public static boolean flashMemcache(){ MemCachedClient mclent = new MemCachedClient(); mclent.flushAll(); return true; }
/** * memcache,存儲調用測試 */ AbMemcache.initMemcache(); AbMemcache.createMemcache("redant", "今天20181106"); Object obj = AbMemcache.getMemcache("redant"); System.err.println(obj);
演示結果:code
/**視頻
演示結果: