博客
关于我
memcached高速缓存学习笔记003---利用JAVA程序操作memcached crud操作
阅读量:796 次
发布时间:2023-02-08

本文共 2071 字,大约阅读时间需要 6 分钟。

Java客户端调用Memcache服务简要指南

在Java环境中使用Memcache客户端,虽然不是很多开发者都选择这种方式,但它依然是一个可靠的选择,尤其是在处理缓存问题时。以下将详细介绍如何在Java项目中集成Memcache客户端,并实现基本的缓存功能。

安装Memcache客户端

第一步,需要下载适用于Java的Memcache客户端。Memcache提供了多个客户端实现,其中Danga Memcached Client 是最常用的之一。下载地址如下:

点击下载

下载完成后,将JAR文件添加到项目的类路径中。通常情况下,这涉及到以下步骤:

  • 在项目根目录下找到 build.gradle 文件,添加以下依赖项:

    compile 'com.danga:memcached-client:2.5.3'
  • 如果你使用的是Maven项目,添加Maven依赖:

    com.danga
    memcached-client
    2.5.3
  • 配置Memcache客户端

    在开始使用客户端之前,需要配置它以连接到Memcache服务器。以下是简单的Java代码示例:

    package com.mem;import com.danga.MemCached.MemCachedClient;import com.danga.MemCached.SockIOPool;public class MemCacheInvoke {    protected static MemCachedClient mcc = new MemCachedClient();        static {        String[] servers = {            "10.15.0.215:46697",            "10.15.0.215:46697"        };        Integer[] weights = {3, 2};        SockIOPool pool = SockIOPool.getInstance();        pool.setServers(servers);        pool.setWeights(weights);        pool.setNagle(false);        pool.setSocketTO(3000);        pool.setSocketConnectTO(0);        pool.initialize();    }    public static void main(String[] args) {        mcc.set("foo", "This is a test String");        String bar = mcc.get("foo").toString();        System.out.println(">>> " + bar);    }}

    注意事项

    • 服务器地址和权重:在代码中,servers 数组指定了Memcache服务器的地址和端口。weights 数组用于设置每个服务器的权重,用于在分布式环境中进行负载均衡。
    • TCP设置setNagle(false)禁用Nagle算法,setSocketTO(3000)设置读取超时,setSocketConnectTO(0)设置连接超时为0秒。

    启动Memcache服务

    在开发环境中,需要启动Memcache服务以测试客户端代码。使用以下命令启动Memcache:

    ./memcached -d -m 10 -u liuzhy -p 112233 -l 10.15.0.215 -P /tmp/memcached.pid

    参数说明

    • -d:运行在后台。
    • -m:指定内存限制,例如 -m 10 表示分配10MB的内存。
    • -u:指定用户身份。
    • -p:指定 Memcache监听的端口,默认为11211。
    • -l:指定监听的IP地址。
    • -P:指定PID文件。

    启动后,可以通过以下命令查看Memcache的运行状态:

    netstat -lp | grep memcached

    端口冲突处理

    如果指定的端口 -p 112233 被占用,Memcache会自动分配一个新的端口。例如,端口46697 可能会被默认分配。

    测试与验证

    在完成配置后,运行主函数:

    MemCacheInvoke.main(args);

    输出结果应为:

    >>> This is a test String

    注意

    在正式应用中,建议添加更多的 Memcache 服务器以提高可用性和容错性。此外,可以根据实际需求调整内存限制和其他TCP设置。

    通过以上步骤,你已经成功在Java项目中集成了Memcache客户端,并实现了基本的缓存功能。

    转载地址:http://xqyfk.baihongyu.com/

    你可能感兴趣的文章
    MySQL5.7.18主从复制搭建(一主一从)
    查看>>
    MySQL5.7.19-win64安装启动
    查看>>
    mysql5.7.19安装图解_mysql5.7.19 winx64解压缩版安装配置教程
    查看>>
    MySQL5.7.37windows解压版的安装使用
    查看>>
    mysql5.7免费下载地址
    查看>>
    mysql5.7命令总结
    查看>>
    mysql5.7安装
    查看>>
    mysql5.7性能调优my.ini
    查看>>
    MySQL5.7新增Performance Schema表
    查看>>
    Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
    查看>>
    Webpack 之 basic chunk graph
    查看>>
    Mysql5.7版本单机版my.cnf配置文件
    查看>>
    mysql5.7的安装和Navicat的安装
    查看>>
    mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
    查看>>
    Mysql8 数据库安装及主从配置 | Spring Cloud 2
    查看>>
    mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
    查看>>
    MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
    查看>>
    MYSQL8.0以上忘记root密码
    查看>>
    Mysql8.0以上重置初始密码的方法
    查看>>
    mysql8.0新特性-自增变量的持久化
    查看>>