在Java项目中部署使用Memcached[转]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Java项目中部署使用Memcached[转]相关的知识,希望对你有一定的参考价值。

在项目中使用到Memcached主要的目的是,通过缓存数据库查询结果,减少数据库访问次数,从而提高动态、数据库驱动网站的速度、提高可扩展性。Memcached是一个高性能的分布式内存对象缓存系统,基于一个存储键/值对的hashmap。

 

实现你的cache类

import net.spy.memcached.MemcachedClient;

 

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFactory;

 

public final class Memcached implements Cache{

 

    public Object get(String key) {

        Object result = null;

        try {

            result = memcachedClient.get(key);

        } catch (Exception e) {

            log.error("Failed to get ‘" + key + "‘ from cache.", e);

        }

        return result;

    }

 

    public void put(String key, Object value) {

        put(key, value, expiredTime);

    }

 

    public void put(String key, Object value, int expiredTime) {

        try {

            memcachedClient.set(key, expiredTime, value);

        } catch (Exception e) {

            log.error("Failed to put ‘" + key + "‘ into cache.", e);

        }

    }

 

    public void remove(String key) {

        try {

            memcachedClient.delete(key);

        } catch (Exception e) {

            log.error("Failed to remove cache ‘" + key + "‘.", e);

        }

    }

 

    public void setExpiredTime(int expiredTime) {

        this.expiredTime = expiredTime;

    }

 

    public void setMemcachedClient(MemcachedClient memcachedClient) {

        this.memcachedClient = memcachedClient;

    }

 

    private MemcachedClient memcachedClient;

 

   

    private int expiredTime = 60 * 120;

 

    private static final Log log = LogFactory.getLog(Memcached.class);

}

 

 

在applicationContext里配置cache相关类关系和属性

具体属性的作用可以参考官方说明:https://code.google.com/p/spymemcached/wiki/SpringIntegration

 

参考:http://blog.sina.com.cn/s/blog_60e4b3a90101c1po.html

以上是关于在Java项目中部署使用Memcached[转]的主要内容,如果未能解决你的问题,请参考以下文章

Memcached实录PHP项目Yii2框架本地Docker-compose部署Memcached的坑/Yii2跨项目使用Memcached的key解决方案/亲测可用带源码建议收藏

Memcached实录PHP项目Yii2框架本地Docker-compose部署Memcached的坑/Yii2跨项目使用Memcached的key解决方案/亲测可用带源码建议收藏

Memcached 与 Wowza 项目的集成

[转]Eclipse中的Web项目自动部署到Tomcat

Memcached安装与配置

阿里云部署Java web项目初体验(转)