java使用Memcached简单教程

 更新时间:2013年12月08日 09:42:47   作者:  
本文主要记录Memcached的一些基本使用和简单的Monitor,大家参考使用吧

Memcached作为一个高并发内存Cached系统被很多大公司使用,最近也一直在用Memcached做项目也积累了一些相关经验。

Install
Memcached的安装很简单,在Ubuntu下面一行命令搞定。

复制代码 代码如下:

sudo apt-get install memcached

Start
实际使用的时候,memcached需要调整内存大小和端口号等命令,则启动的使用时用以下的Command就行。

复制代码 代码如下:

usr/local/bin/memcached -p 11211 -m 64m -d

-p 指定端口号
-m 指定内存大小
-d 作为daemon在后台启动
如果想trouble shotting 则加 -vv

Test
Test也很简单,安装官网的命令就行

复制代码 代码如下:

telnet localhost 11211

里面就能Get和Set了。

Use in Java
由于项目是java的,所以以java为例子来介绍Java下Memcached的使用。

Java下Memcached的客户端很多,这里介绍spymemcached

spymemcached的使用很简单,在maven项目下面,我们加入如下依赖。

复制代码 代码如下:

<dependency>
    <groupId>net.spy</groupId>
    <artifactId>spymemcached</artifactId>
    <version>2.9.1</version>
</dependency>

这样我们就能对Memcached操作了。

复制代码 代码如下:

public class Memcached {

    private static MemcachedClient MEMCACHED_CLIENT;

    static {
        try {
            MEMCACHED_CLIENT = new MemcachedClient(
                    AddrUtil.getAddresses("localhost1:11211 localhost2:11211"));
        } catch (Exception e) {
            System.err.println("Cannot init MEMCACHED Memcached Client");
        }
    }

    public static void set(String key, String value,Integer expireTime ) throws Exception {
        MEMCACHED_CLIENT.set(key, expireTime, value);
    }

    public static String get(String key) throws Exception {
        Object value = MEMCACHED_CLIENT.get(key);
        if (null != value)
            return value.toString();
        return null;
    }

}

Monitor
我们可以通过以下简单的命令得知Memcached的运行状况,以此为扩充可以实现简单的Memcached检测shell。

复制代码 代码如下:

watch "echo stats | nc 127.0.0.1 11211"

Conclusion
Memcached实际使用下来简单易用,各个平台上面也有相应的Client.

但有时高并发可能会出现Timeout的情况,导致缓冲没办法命中的情况,具体原因还需要进一步调查。

Memcahed的作者最近用Go语言去写了groupcache很值得关注。

相关文章

  • Spring实现在非controller中获取request对象

    Spring实现在非controller中获取request对象

    这篇文章主要介绍了Spring实现在非controller中获取request对象方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08
  • Java开发实例之图书管理系统的实现

    Java开发实例之图书管理系统的实现

    图书管理的功能大体包括:增加书籍、借阅书籍、删除书籍、查看书籍列表、退出系统、查找书籍、返还书籍这些,本文主要给大家介绍该系统的数据库语句,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-10-10
  • SpringBoot实现统一功能处理的教程详解

    SpringBoot实现统一功能处理的教程详解

    这篇文章主要为大家详细介绍了SpringBoot如何实现统一功能处理,文中的示例代码讲解详细,对大家学习或工作有一定借鉴价值,感兴趣的同学可以参考阅读下
    2023-05-05
  • Springboot2集成pagehelper过程图解

    Springboot2集成pagehelper过程图解

    这篇文章主要介绍了springboot2集成pagehelper过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • java中的hashCode方法小例子

    java中的hashCode方法小例子

    这篇文章主要介绍了java中的hashCode方法小例子,有需要的朋友可以参考一下
    2013-12-12
  • Java文件上传下载、邮件收发实例代码

    Java文件上传下载、邮件收发实例代码

    这篇文章主要介绍了Java文件上传下载、邮件收发实例代码的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-06-06
  • SpringBoot使用JWT实现登录验证的方法示例

    SpringBoot使用JWT实现登录验证的方法示例

    这篇文章主要介绍了SpringBoot使用JWT实现登录验证的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • java中线程安全的list详细特性和用法

    java中线程安全的list详细特性和用法

    这篇文章主要给大家介绍了关于java中线程安全的list详细特性和用法的相关资料,Java中有多种线程安全的List,其中比较常用的有Vector、Collections.synchronizedList()和CopyOnWriteArrayList三种方式,需要的朋友可以参考下
    2024-03-03
  • 2020最新版idea激活教程(推荐)

    2020最新版idea激活教程(推荐)

    这篇文章主要介绍了2020最新版idea激活教程,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-02-02
  • Java数据结构之图的原理与实现

    Java数据结构之图的原理与实现

    图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。本文将详细介绍图的原理及其代码实现,需要的可以参考一下
    2022-01-01

最新评论