xmemcached发布
1.10 RC2,这一版本的主要改进如下:
1、修复1.10-RC1以来发现的bug
2、添加对 flush_all协议的支持,XMemcachedClient.flushAll方法用以使memcached的缓存数据项失效,这一方法有系列重载方法
使用方法,例子:
3、添加 stats协议支持,用以查询某个memcached server的统计信息:
查询结果以map的形式返回,map中的key-value映射与stats协议返回的一致。例子:
4、允许通过jmx监控XMemcachedClient的运行状况,并调整参数等。jmx监控默认未开启,可以通过
的参数来启用,那么就可以通过
来访问MBean。
XMemcached提供两个标准MBean,一个是net.rubyeye.xmemcached.impl.OptimiezerMBean,用于查看和调整性能参数;另一个是net.rubyeye.xmemcached.monitor.StatisticsHandlerMBean,用于查询memcached客户端的统计信息(注意跟memcached server的统计信息做区别,客户端的统计信息可能包括了多个节点)。默认统计未开启,可以通过
1、修复1.10-RC1以来发现的bug
2、添加对 flush_all协议的支持,XMemcachedClient.flushAll方法用以使memcached的缓存数据项失效,这一方法有系列重载方法
void
flushAll()
使cache中所有的数据项失效,如果是连接多个节点的memcached,那么所有的memcached中的数据项都将失效
void flushAll( long timeout)
使cache中所有的数据项失效,如果是连接多个节点的memcached,那么所有的memcached中的数据项都将失效
void flushAll(java.net.InetSocketAddress address)
使指定memcached节点的数据项失效
void flushAll(java.net.InetSocketAddress address, long timeout)
使指定memcached节点的数据项失效
void flushAll(java.lang.String host)
使指定memcached节点的数据项失效
void flushAll(java.lang.String host, long timeout)
使指定memcached节点的数据项失效
使cache中所有的数据项失效,如果是连接多个节点的memcached,那么所有的memcached中的数据项都将失效
void flushAll( long timeout)
使cache中所有的数据项失效,如果是连接多个节点的memcached,那么所有的memcached中的数据项都将失效
void flushAll(java.net.InetSocketAddress address)
使指定memcached节点的数据项失效
void flushAll(java.net.InetSocketAddress address, long timeout)
使指定memcached节点的数据项失效
void flushAll(java.lang.String host)
使指定memcached节点的数据项失效
void flushAll(java.lang.String host, long timeout)
使指定memcached节点的数据项失效
使用方法,例子:
XMemcachedClientBuilder builder
=
new
XMemcachedClientBuilder(
AddrUtil.getAddresses( " 192.168.0.121:12000 192.168.0.121:12001 " ));
XMemcachedClient client = builder.build();
// 使所有数据项失效
client.flushAll();
// 使192.168.0.121:12000节点的数据项失效
client.flushAll( " 192.168.0.121:12000 " );
AddrUtil.getAddresses( " 192.168.0.121:12000 192.168.0.121:12001 " ));
XMemcachedClient client = builder.build();
// 使所有数据项失效
client.flushAll();
// 使192.168.0.121:12000节点的数据项失效
client.flushAll( " 192.168.0.121:12000 " );
3、添加 stats协议支持,用以查询某个memcached server的统计信息:
java.util.Map
<
java.lang.String,java.lang.String
>
stats(java.net.InetSocketAddress address)
查看特定节点的memcached server统计信息
java.util.Map < java.lang.String,java.lang.String > stats(java.net.InetSocketAddress address, long timeout)
查看特定节点的memcached server统计信息
java.util.Map < java.lang.String,java.lang.String > stats(java.lang.String host)
查看特定节点的memcached server统计信息
java.util.Map < java.lang.String,java.lang.String > stats(java.lang.String host, long timeout)
查看特定节点的memcached server统计信息
查看特定节点的memcached server统计信息
java.util.Map < java.lang.String,java.lang.String > stats(java.net.InetSocketAddress address, long timeout)
查看特定节点的memcached server统计信息
java.util.Map < java.lang.String,java.lang.String > stats(java.lang.String host)
查看特定节点的memcached server统计信息
java.util.Map < java.lang.String,java.lang.String > stats(java.lang.String host, long timeout)
查看特定节点的memcached server统计信息
查询结果以map的形式返回,map中的key-value映射与stats协议返回的一致。例子:
//
查询192.168.0.121:12000节点的统计信息
Map < String,String > info = xmemcachedClient.stats( " 192.168.0.121:12000 " )
Map < String,String > info = xmemcachedClient.stats( " 192.168.0.121:12000 " )
4、允许通过jmx监控XMemcachedClient的运行状况,并调整参数等。jmx监控默认未开启,可以通过
-
Dxmemcached.jmx.enable
=
true
-
Dxmemcached.rmi.port
=
7077
-
Dxmemcached.rmi.name
=
xmemcachedServer
的参数来启用,那么就可以通过
service:jmx:rmi:
//
/jndi/rmi:
//
[host]:7077/xmemcachedServer
来访问MBean。
XMemcached提供两个标准MBean,一个是net.rubyeye.xmemcached.impl.OptimiezerMBean,用于查看和调整性能参数;另一个是net.rubyeye.xmemcached.monitor.StatisticsHandlerMBean,用于查询memcached客户端的统计信息(注意跟memcached server的统计信息做区别,客户端的统计信息可能包括了多个节点)。默认统计未开启,可以通过
-
Dxmemcached.statistics.enable
=
true
来开启客户端统计。更多信息请用jconsole访问即知。
文章转自庄周梦蝶 ,原文发布时间2009-05-05