java Memcache使用详解

简介: Memcached-Java-Client是Memcached官方提供的Java语言访问Memcached的client,使用它可以比较方便地与缓存服务端进行通信。下载地址:https://github.com/gwhalin/Memcached-Java-Client/downloads, 下载最新版本 java_memcached-release_2.6.6.zipmemcached


Memcached-Java-Client是Memcached官方提供的Java语言访问Memcached的client,使用它可以比较方便地与缓存服务端进行通信。
下载地址:https://github.com/gwhalin/Memcached-Java-Client/downloads,

 下载最新版本 java_memcached-release_2.6.6.zip

memcached 是多线程  默认端口 11211

redis是单线程 端口 6379

java代码如下:

package memcache;

import java.io.Serializable;
import java.util.Date;
import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;
class User implements Serializable{ //必须将对象序列化才能保存 
 public String userName; 
 public String password;
 }
public class MemcacheManagerForGwhalin { 
 // 构建缓存客户端    
 private static MemCachedClient cachedClient;  
 // 单例模式实现客户端管理类     
 private static MemcacheManagerForGwhalin INSTANCE = new MemcacheManagerForGwhalin();      
 private MemcacheManagerForGwhalin() {         
  cachedClient = new MemCachedClient();         
  //获取连接池实例          
  SockIOPool pool = SockIOPool.getInstance();           
  //设置缓存服务器地址,可以设置多个实现分布式缓存          
  pool.setServers(new String[]{"127.0.0.1:11211"}); 
  //设置初始连接5         
  pool.setInitConn(5);      
  //设置最小连接5          
  pool.setMinConn(5);       
  //设置最大连接250          
  pool.setMaxConn(250);       
  //设置每个连接最大空闲时间3个小时         
  pool.setMaxIdle(1000 * 60 * 60 * 3);    
  pool.setMaintSleep(30);           
  pool.setNagle(false);         
  pool.setSocketTO(3000);         
  pool.setSocketConnectTO(0);      
  pool.initialize();    
 }           
 /**     
  *  
  *  
  * 获取缓存管理器唯一实例       
  * @return     
  */     
 public static MemcacheManagerForGwhalin getInstance() {    
  return INSTANCE;     
  }        
 public void add(String key, Object value) {  
  cachedClient.set(key, value);   
  }        
 public void add(String key, Object value, int milliseconds) {   
  cachedClient.set(key, value, milliseconds);   
  }        
 public void remove(String key) { 
  cachedClient.delete(key);     
  }       
 public void remove(String key, int milliseconds) {    
  cachedClient.delete(key, milliseconds, new Date()); 
  }        
 public void update(String key, Object value, int milliseconds) {  
  cachedClient.replace(key, value, milliseconds);   
  }        
 public void update(String key, Object value) {       
  cachedClient.replace(key, value);   
  }                
 public Object get(String key) {       
  return cachedClient.get(key);     
  }         
 public static void main(String args[]){ 
  MemcacheManagerForGwhalin memcache = MemcacheManagerForGwhalin.getInstance();  
  memcache.add("4", new User());   
  System.out.println(memcache.get("4"));   
  }
}

wKiom1XFwNmzTHCaAAEiQwedrpI981.jpg


源码下载请见附件



参考文章:

http://asher.blog.163.com/blog/static/174174566201321421241578/


与Spring集成


http://blog.csdn.net/dhdhdh0920/article/details/42242521

  

目录
相关文章
|
Java Memcache Maven
Java操作memcache
[本文出自天外归云的博客园] 准备工作 Java操作memcache需要spymemcache类库的支持,在Eclipse中修改maven项目的pom.xml文件—— 添加仓库: spy Spy Repository default http://files.
907 0
|
缓存 Java API
Java开发中的Memcache原理及实现
七、            Memcached 客户端程序 Memcached的java客户端已经存在三种了: ?  官方提供的基于传统阻塞io由Greg Whalin维护的客户端 ?  Dustin Sallings实现的基于java nio的Spymemcached ?  XMemcached 1. 三种API比较 1)      memcached client for j
1172 0
|
缓存 Java Memcache
Java调用Memcache入门
1       Memcache是什么 Memcache是danga.com的一个项目,最早是为 LiveJournal 服务的,目前全世界不少人使用这个缓存项目来构建自己大负载的网站,来分担数据库的压力。 它可以应对任意多个连接,使用非阻塞的网络IO。由于它的工作机制是在内存中开辟一块空间,然后建立一个HashTable,Memcached自管理这些HashTable。    
1184 0
|
移动开发 Java Linux
CentOS 安装 Memcache 服务器. java 做客户端.
  1,下载安装第三方源:   CentOS 6 或 RedHat 6 安装此rpm , 其他 下载 :http://pkgs.repoforge.org/rpmforge-release/     wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm rp
1359 0
|
缓存 Java Windows
java memcache
引用:http://blog.csdn.net/einarzhang/article/details/6064092 Memcache的介绍有很多,这里给出如何在Java中应用Memcache的基本方法     1 安装Memcache服务器(windows) 下载windows版Memcache安装包,如memcached-1.2.6-win32-bin.zip,解压到指定位置,比如(D://memcache),打开dos命令行,输入以下两个命令即可启动Memcache服务。
767 0
|
8天前
|
安全 算法 Java
深入理解Java并发编程:线程安全与性能优化
【4月更文挑战第11天】 在Java中,高效的并发编程是提升应用性能和响应能力的关键。本文将探讨Java并发的核心概念,包括线程安全、锁机制、线程池以及并发集合等,同时提供实用的编程技巧和最佳实践,帮助开发者在保证线程安全的前提下,优化程序性能。我们将通过分析常见的并发问题,如竞态条件、死锁,以及如何利用现代Java并发工具来避免这些问题,从而构建更加健壮和高效的多线程应用程序。
|
1天前
|
安全 Java
java多线程(一)(火车售票)
java多线程(一)(火车售票)
|
2天前
|
安全 Java 调度
Java并发编程:深入理解线程与锁
【4月更文挑战第18天】本文探讨了Java中的线程和锁机制,包括线程的创建(通过Thread类、Runnable接口或Callable/Future)及其生命周期。Java提供多种锁机制,如`synchronized`关键字、ReentrantLock和ReadWriteLock,以确保并发访问共享资源的安全。此外,文章还介绍了高级并发工具,如Semaphore(控制并发线程数)、CountDownLatch(线程间等待)和CyclicBarrier(同步多个线程)。掌握这些知识对于编写高效、正确的并发程序至关重要。