java连接couchbase的memcache
没有参考代码的时候重新写还是有点累的,这是重温了,第一次写的时候参考了别的一些乱七八糟的代码,虽然不是和这个一样的,不过在不懂的情况下还是很快写出来了,反而是这次光是找需要哪些jar都搞了半天,最后发现extern的用一个jar就够了,addresses和auth之前也是糊里糊涂的,这次总算搞清楚了
maven引入
<dependency>
<groupId>com.googlecode.xmemcached</groupId>
<artifactId>xmemcached</artifactId>
<version>1.4.3</version>
</dependency>
先按照在前面的一篇《记一次couchbase(memcached)安装以及使用》的步骤安装好,类型选择couchbase就行了,
测试代码如下:
package Test.test; import java.io.IOException;
import java.util.concurrent.TimeoutException; import net.rubyeye.xmemcached.MemcachedClient;
import net.rubyeye.xmemcached.MemcachedClientBuilder;
import net.rubyeye.xmemcached.XMemcachedClientBuilder;
import net.rubyeye.xmemcached.auth.AuthInfo;
import net.rubyeye.xmemcached.command.BinaryCommandFactory;
import net.rubyeye.xmemcached.exception.MemcachedException;
import net.rubyeye.xmemcached.utils.AddrUtil;
public class App
{
public static void main( String[] args )
{
try {
MemcachedClientBuilder builder = new XMemcachedClientBuilder(AddrUtil.getAddresses("192.168.92.128:11211")) ;
builder.addAuthInfo(AddrUtil.getOneAddress("192.168.92.128:11211"), AuthInfo.plain("azul", "xxxx"));
builder.setCommandFactory(new BinaryCommandFactory());
builder.setFailureMode(true);
builder.setConnectionPoolSize(10);
MemcachedClient client = builder.build();
client.set("lwk", 0, "hello");
String value = client.get("key");
System.out.println(value);
client.shutdown();
} catch (IOException e) {
e.printStackTrace();
} catch (TimeoutException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
} catch (MemcachedException e) {
e.printStackTrace();
}
System.out.println( "end..." );
}
}
执行结果:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
hello
end...
管理界面上可以看到:
它是密文存储的

如果不用sasl验证的话先把服务器上的验证去掉然后这样写
package Test.test; import net.spy.memcached.AddrUtil;
import net.spy.memcached.MemcachedClient; public class App
{
public static void main( String[] args )
{
try {
MemcachedClient client = new MemcachedClient(AddrUtil.getAddresses("192.168.92.128:11211"));
client.set("lwk", 0, "hello");
Object value = client.get("lwk");
System.out.println(value);
client.shutdown();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println( "end..." );
}
}
结果:
2015-03-01 23:26:38.268 INFO net.spy.memcached.MemcachedConnection: Added {QA sa=/192.168.92.128:11202, #Rops=0, #Wops=0, #iq=0, topRop=null, topWop=null, toWrite=0, interested=0} to connect queue
2015-03-01 23:26:38.271 INFO net.spy.memcached.MemcachedConnection: Connection state changed for sun.nio.ch.SelectionKeyImpl@be7667
2015-03-01 23:26:38.276 WARN net.spy.memcached.MemcachedConnection: Could not redistribute to another node, retrying primary node for lwk.
hello
end...
2015-03-01 23:26:38.284 INFO net.spy.memcached.MemcachedConnection: Shut down memcached client
这里是通过java client访问,一会儿用命令行试一下。
服务器上起了一个memcached服务之后,
如果是auth-less的,可以用telnet客户端直接去连接
C:\Users\Administrator>telnet 192.168.92.128 11200
输入stats,得到一系列的服务器上的信息
stats
STAT delete_misses 0
STAT rejected_conns 0
STAT connection_structures 5000
STAT reclaimed 0
STAT limit_maxbytes 67108864
STAT decr_hits 0
STAT curr_conns_on_port_11209 12
STAT curr_conns_on_port_11210 5
STAT curr_connections 19
STAT rusage_system 17.695309
STAT cas_misses 0
STAT bytes 64
STAT get_misses 1
STAT bytes_read 380638
STAT get_hits 4
STAT decr_misses 0
STAT rusage_user 1093.362783
STAT bucket_conns 9
STAT cmd_flush 0
STAT tcp_nodelay enable
STAT uptime 25500
STAT max_conns_on_port_11209 1000
STAT total_items 2
STAT incr_hits 0
STAT max_conns_on_port_11210 9000
STAT time 1425174744
STAT daemon_connections 4
STAT pointer_size 64
STAT version 2.1.0r
STAT engine_maxbytes 104857600
STAT evictions 0
STAT total_connections 58
STAT curr_items 1
STAT delete_hits 0
STAT cas_hits 0
STAT auth_errors 0
STAT threads 4
STAT pid 1465
STAT auth_cmds 4
STAT cas_badval 0
STAT cmd_set 2
STAT bucket_active_conns 1
STAT cmd_get 5
STAT conn_yields 0
STAT listen_disabled_num 0
STAT bytes_written 8718605
STAT libevent 2.0.11-stable
STAT accepting_conns 1
STAT incr_misses 0
END
现在可以add、set、get
java连接couchbase的memcache的更多相关文章
- Memcached常用语法与java连接服务
memcached常用语法及java使用方式 Author:SimpleWu Memcached 存储命令 Memcached set 命令用于将 value(数据值) 存储在指定的 key(键) 中 ...
- Java连接远程Redis
redis-server & //后台启动redis redis-cli //使用redis 打开redis.conf文件在NETWORK部分有说明 /usr/local/src ...
- Java连接SQLServer2008终极解决办法(亲身上机演练版)
今天我一学妹问我,Java连接SQLServer2008数据库的问题,一直无法连接成功.想起自己刚开始学习的时候,在网上找各种文章,然后实际上机验证操作,花了一两天时间才搞定,一把辛酸泪呀!记得当时是 ...
- java连接mysql
Java 连接 MySQL 需要驱动包,最新版下载地址为:http://dev.mysql.com/downloads/connector/j/,解压后得到jar库文件,然后在对应的项目中导入该库文件 ...
- java连接mysql数据库详细步骤解析
java连接mysql数据库详细步骤解析 第一步:下载一个JDBC驱动包,例如我用的是:mysql-connector-java-5.1.17-bin.jar 第二步:导入下载的J ...
- Java连接SqlServer2008数据库(转)
Java连接SqlServer2008数据库 首先下载JDBC:下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=21599 下 ...
- 几个主流java连接池
池(Pool)技术在一定程度上可以明显优化服务器应用程序的性能,提高程序执行效率和降低系统资源开销.这里所说的池是一种广义上的池,比如数据库连接池.线程池.内存池.对象池等.其中,对象池可以看成保存对 ...
- java 连接 MySQL
java 连接 MySQL 1.准备工作 需要下载的工具: MySQL:http://www.mysql.com/downloads/ MySQL的可视化工具SQLyog:https://www.we ...
- java连接sql server2000/2005
接触Java或者JSP,难免会使用到数据库SQL Server 2000/2005(我使用2005标准版[9.0.3054]测试),经过自己的搜索和研究,使用JDBC连接SQL Server成功,特此 ...
- Java 连接MongoDB
1.驱动 通过java连接MongoDB需要一个java版的驱动 下载地址:http://mongodb.github.io/mongo-java-driver/ 2.连接MongoDB 通过 com ...
随机推荐
- 微信小程序(开发某些方式)
1.开发工具:微信小程序开发工具(需要appid登录)2.调试:可使用微信开发者工具预览(用真机测试)3.真机调试:微信开发者工具真机调试(可打印以及查看网络等)4.扫一扫功能: 1.小程序里面可 ...
- Nodejs杀死本地应用(win)
windows端nodejs检查应用运行并杀死. import {exec, execSync} from "child_process" import {decode} from ...
- shell实现接口初次失败告警,恢复也发送一次通知
1.该shell判断 第一次失败告警,接口恢复发送一次通知 参数:一个参数接口返回结果0 表示成功 1表示失败 脚本详情 [root@localhost bd]# more bd-new.sh #!/ ...
- 一步一步地完成题目——费解的开关(C/C++语言)递推、递归、顺序思维
前言 本文中博主将一步一步地.以正常人的顺序思维完成题目--费解的开关,使用的核心方法是递推与递归. 题目 参考题目:费解的开关 详细的题目信息相信大家都已经知道了,因此这里为了简洁只展示输入输出格式 ...
- 字符类型(char)
字符类型(char) 基本介绍 字符类型可以表示`单个字符`,字符类型是char,char是两个字节(可以存放汉字),多个字符我们用字符串String(我们后面详细讲解String) 案例演示 //演 ...
- lbaas
目录 - LBaaS v2 - 负载均衡概念 - 服务器池 Pool - 监听器 Listener - L7 转发策略 l7 policy - 负载均衡算法 Algorithms - 健康监测 Mon ...
- linux批量操作(一)
一.常用命令 1.关闭所有java进程命令: ps -ef | grep java | grep -v grep | awk '{print $2}' | xargs kill -9 2.批量文本操作 ...
- Java笔记_this关键字_HomeWork(5 - 9 题)
第五题 /** * @ClassName HomeWork05 * @Description TODO * @Author Orange * @Date 2021/4/25 10:09 * @Vers ...
- Qt设置程序图标
修改.pro文件添加一下代码:要求.pro文件和.ico文件在同一文件夹下 RC_ICONS = xxx.ico (你的程序图标)最后重新构建一次即可
- mybatis中xml新增一条数据获取自增id
在insert的标签里加两个属性:useGeneratedKeys="true" keyProperty="patentId" ,这个key ...