memcached的安装及使用

10 篇文章 0 订阅
2 篇文章 0 订阅
Cmd  到memcached根目录 
1、安装 
memcached.exe –d install  

2、启动 
memcached.exe -d start 

此时memcached已经注册为开机启动服务 

完成安装。 

互联网项目开发目前比较流行的缓存服务分别是memcache和redis
两种都是非关系型缓存,即按照<key, value>方式存取
Java缓存框架 EhCache EhCache 是一个纯Java的进程内缓存框架
,具有快速、精干等特点,是Hibernate中默认的CacheProvider
memcached服务默认占用的端口是11211,占用的最大内存默认是64M。
set value must serializable

package com.goldpalm.api.auth.core.util;

import java.util.Date;

import com.danga.MemCached.MemCachedClient;
import com.danga.MemCached.SockIOPool;

/**
 * @author Miku Liu
 */
public class MemcacheUtil {
    private static MemCachedClient memCachedClient;
    /**
     * 通过key获取Cache中对象
     * @param token
     * @return
     * @author Miku Liu
     */
    public static Object getCacheObj(String token) {
        /* 建立MemcachedClient实例 */
        if(memCachedClient!=null){
            return memCachedClient.get(token);
        }else{
            return null;
        }
    }
    /**
     * 把对象保存进cache
     * @param token
     * @param obj
     * @author Miku Liu
     */
    public static void setCacheObj(String token, Object obj, Date expiry) {
        /* 初始化SockIOPool,管理memcached的连接池 */
        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();
        /* 建立MemcachedClient实例 */
        memCachedClient = new MemCachedClient();
        memCachedClient.set(token, obj,expiry);
//        System.out.println(flag+"###3");
    }
}


适用场合(转载):

1. 分布式应用。由于memcached本身基于分布式的系统,所以尤其适合大型的分布式系统。

2. 数据库前段缓存。数据库常常是网站系统的瓶颈。数据库的大并发量访问,常常造成网站内存溢出。当然我们也可以使用Hibernate的缓存机制。但memcached是基于分布式的,并可独立于网站应用本身,所以更适合大型网站进行应用的拆分。

3. 服务器间数据共享。举例来讲,我们将网站的登录系统、查询系统拆分为两个应用,放在不同的服务器上,并进行集群,那这个时候用户登录后,登录信息如何从登录系统服务器同步到查询系统服务器呢?这时候,我们便可以使用memcached,登录系统将登录信息缓存起来,查询系统便可以获得登录信息,就像获取本地信息一样。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值