您的位置:首页 > 其它

简单了解web缓存工具: mamcache 和EhCache 和Terracotta

2010-12-23 11:32 344 查看
a) 极其简单的研究总结了一下web缓存机制: mamcache 和EhCache 和Terracotta :
i. Mamcache:google之后,发现目前用的比较多的是:memcached client for java 和spymemcached ,以及xmemcached,但实践中发现maven 的jar库里面竟然没有对memcached client for java的支持。原理可能有些区别但发现使用起来都不是很复杂,
1. memcached client for java:
它可以设置一大堆参数,感觉定制性比较强,灵活,如:
可以在server中设置多台服务器,实现分布式。
public static void main(String[] args) {

    /*初始化SockIOPool,管理memcached的连接池*/

    String[] servers = { "192.168.1.20:12111" };

    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();

    /*建立MemcachedClient实例*/

    MemCachedClient memCachedClient = new MemCachedClient()


2. spymemcached:
google了很久,也请教了老大,发现这个东西,有较少的参数可以自己定制,如:
MemcachedClient mc = new MemcachedClient(new InetSocketAddress(
"127.0.0.1", 11211));
Future<Boolean> b = null;
/* 将key值,过期时间(秒)和要缓存的对象set到memcached中 */
b = mc.set("xsaxas", 900, "someObject");
if (b.get().booleanValue() == true) {
mc.shutdown();
}

ii. EhCache :在google memacahe时发现在个的,貌似功能还很强大,还有专门的配置文件来配置参数,不单单可以做数据库之上的数据缓存,还可以缓存页面,将页面缓存起来,加速访问速度,提高用户体验,后来被Terracotta收购。
iii. Terracotta : 老大推荐的,可以真正的支持分布式缓存,上面的mancache只能是将数据存到多台服务器,但是memecahe服务器之间的数据不能共享,而这个Terracotta 可以实现多台服务器共享缓存相同的数据,Terracotta 集成了ehcache功能之外,还有大堆其它功能,还没有详细研究。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: