阅读更多

22顶
1踩

企业架构

原创新闻 Xmemcached 1.2.6.1发布

2010-10-18 08:06 by 资深记者 dennis_zane 评论(12) 有7932人浏览

    开源Java Memcached客户端Xmemcached 1.2.6.1正式发布,这个版本的主要是做bug fix以及一些细节改进,主要变动如下:

1、修复BUG,包括:
Issue 85: 当存在多个MemcachedClient的时候,JMX的统计只显示其中一个
Issue 87: 当使用一致性哈希的时候,连接池不起作用
Issue 90: 用户线程中断引起的连接关闭
Issue 94:BinaryMemcachedClientUnitTest测试失败
Issue 95: JMX addServer,removeServer存在缺陷
Issue 96: OOM Error while decompressing 60 KB of actuall data
Issue 97: 使得关闭连接更友好

2、改进重连机制,重连不再是以固定间隔(默认2秒)做重试连接,而是以一个等差数列递增间隔时间,第一次2秒,第二次4秒,第三次6秒……直到最大间隔时间1分钟做重连尝试。

3、改善关闭机制,关闭连接前发送quit命令,尽量做到友好关闭,等待服务器主动断开连接。

4、添加新的方法用于设置XmemcachedClient实例名称,用于区分不同的缓存集群,方便统计显示:

 

public interface MemcachedClient{
       /**
     * Return the cache instance name
     * 
     * @return
     */
    public String getName();

    /**
     * Set cache instance name
     * 
     * @param name
     */
    public void setName(String name);
}
 


名称也可通过spring配置。

5、提供英文的用户指南,非常感谢cnscud的帮助,这份文档是他一人搞定的。

6、更新了Java Memcached Client Benchmark,跟最新版本的spymemcached,Java-Memcached-Client做对比测试,提供给需要的朋友参考。


项目首页  http://code.google.com/p/xmemcached/
下载地址  http://code.google.com/p/xmemcached/downloads/list
wiki地址   http://code.google.com/p/xmemcached/w/list

22
1
评论 共 12 条 请登录后发表评论
12 楼 dennis_zane 2010-10-21 13:55
ywg_2008 写道
不可用存储 1M以上的,所以我才说提个BUG 的,呵呵,把MAX_SIZE这个参数改大就可以了。


恩,我记错了,不好意思,是还有问题,是可以通过设置解决的,这部分需要清理下,如果你要存储超过1MB的数据,可以这样设置,如设置为10MB

memcachedClient.setTranscoder(new SerializingTranscoder(10*1024*1024));

11 楼 ywg_2008 2010-10-21 13:33
不可用存储 1M以上的,所以我才说提个BUG 的,呵呵,把MAX_SIZE这个参数改大就可以了。
dennis_zane 写道
ywg_2008 写道
提个bug :
public final class CachedData {

/**
* Maximum data size allowed by memcached.
*/
public static int MAX_SIZE = 1024 * 1024;
 
这里客户端代码写死了 memcached能存储最大值,然而memcache从1.4.2版本起 就支持大于1M的items了。通过 I 参数设置。


那个参数不起作用的,你可以试试能否存储1M以上的。代码没有清理干净。

dennis_zane 写道
ywg_2008 写道
提个bug :
public final class CachedData {

/**
* Maximum data size allowed by memcached.
*/
public static int MAX_SIZE = 1024 * 1024;
 
这里客户端代码写死了 memcached能存储最大值,然而memcache从1.4.2版本起 就支持大于1M的items了。通过 I 参数设置。


那个参数不起作用的,你可以试试能否存储1M以上的。代码没有清理干净。

10 楼 dennis_zane 2010-10-20 16:05
ywg_2008 写道
提个bug :
public final class CachedData {

/**
* Maximum data size allowed by memcached.
*/
public static int MAX_SIZE = 1024 * 1024;
 
这里客户端代码写死了 memcached能存储最大值,然而memcache从1.4.2版本起 就支持大于1M的items了。通过 I 参数设置。


那个参数不起作用的,你可以试试能否存储1M以上的。代码没有清理干净。
9 楼 ywg_2008 2010-10-20 15:47
提个bug :
public final class CachedData {

/**
* Maximum data size allowed by memcached.
*/
public static int MAX_SIZE = 1024 * 1024;
 
这里客户端代码写死了 memcached能存储最大值,然而memcache从1.4.2版本起 就支持大于1M的items了。通过 I 参数设置。
8 楼 wenson 2010-10-19 11:11
dennis_zane 写道
wenson 写道
不錯的memcached client,正在使用,呵呵

这个版本推荐升级,有些严重的BUG到这个版本才修复,比如issue 90,感谢支持

正準備升級,感謝
7 楼 icanfly 2010-10-18 18:46
嘿嘿,我们项目 我也推荐在用!
6 楼 dennis_zane 2010-10-18 17:00
javaTo 写道
在用1.2.5,准备升级

升级前最好能回归测试   你的使用是我改进的动力 
5 楼 javaTo 2010-10-18 15:53
在用1.2.5,准备升级
4 楼 dennis_zane 2010-10-18 14:57
wenson 写道
不錯的memcached client,正在使用,呵呵

这个版本推荐升级,有些严重的BUG到这个版本才修复,比如issue 90,感谢支持
3 楼 CharlesCui 2010-10-18 13:14
孜孜不倦的更新,精益求精的优化,顶你。
2 楼 surpass 2010-10-18 09:22
庄周梦蝶大侠辛苦了
1 楼 wenson 2010-10-18 09:17
不錯的memcached client,正在使用,呵呵

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • EasyMock 使用方法与原理剖析

    郑 闽睿 (zhengmr@cn.ibm.com), 软件工程师, IBM CSDL 黄 湘平 (xphuang@cn.ibm.com), 高级软件工程师,IBM CSDL EasyMock单元测试的扩展; EasyMock简介(抽象类接口做测试); EasyMock来进行测试; EasyMock如何打桩; EasyMock实践指南; EasyMock使用技巧; EasyMock使用简明手册; EasyMock使用说明; EasyMock使用手记; 用Mock object进行隔离测试;

  • 使用easy-mock的ajax dataType一定要为json的原因

    使用mockjs的ajax dataType一定要为json的原因 在使用easy-mock或者mockjs的时候,如果不小心把ajax请求的dataType设置为jsonp,就会出现这种报错: 解决原因很简单,把dataType设置为json就可以了,原因就是mockjs源码里面把dataType设置为了json,所以用jsonp请求是不可以的。 如果一定要请求数据类型为jsonp,在请求...

  • EasyMock使用手记

    Mock 对象能够模拟领域对象的部分行为,并且能够检验运行结果是否和预期的一致。领域类将通过与 Mock 对象的交互,来获得一个独立的测试环境(引自《 精通 Spring——Java 轻量级架构开发实践 》。  在模仿对象中,我们定义了四个概念:  1 )目标对象:正在测试的对象  2 )合作者对象:由目标对象创建或获取的对象  3 )模仿对象:遵循模仿对象模式的合作者的子类(或实现)

  • python之easy_mock(伪造返回数据)

    moco-runner-0.12.0-standalone安装下载地址: http://repo1.maven.org/maven2/com/github/dreamhead/moco-runner/0.12.0/ java版本1.8:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.ht...

  • React--模拟返回后台数据神器,Easy Mock

    1、进入EasyMock官网https://www.easy-mock.com/login,选择简体中文 2、点击开始吧,进行登录或注册,进入首页 3、点击右下角创建新项目 没有Swagger Docs API可填写 https://petstore.swagger.io/v2/swagger.json 4、创建成功后点击项目,根据API文档添加模拟数据接口 5、点击创建接口,并...

  • easyMock 数据使用

    之前写了两篇文章,第一篇为 easyMock 项目搭建,点我!! 第二篇为 easyMock 数据格式示例,点我 本篇文章是总结如何使用 easyMock 生成的数据 首先点击预览,在 easyMock 中测试接口是否可以使用 成功拿到返回值,即 easyMock 测试成功 项目中进行测试 点击复制接口地址 如上,接口调用成功!!(*^▽^*)(*^▽^*)~...

  • 前端003_模拟数据接口_easymock

    Easy Mock 是一个可视化,并且能快速生成模拟数据的服务。是杭州大搜车无线团队出品的一个极其简单、高效、可视化、并且能快速生成模拟数据的在线 Mock 服务。现在 Easy Mock 内置了 Mock.js,我们可以更愉快的伪造数据了网址下载: https://github.com/easy-mock/easy-mock注意:easy-mock 的安装还是比较麻烦,需要事先安装mongodb redis。

  • mock模拟的数据能增删改查吗_使用Swager API Docs和easy-mock生成模拟数据

    前面文章已经搭建了本地的easy-mock本地搭建Easy-Mock实现模拟数据常见的Mock方式:将模拟数据直接写在代码里利用javascript拦截请求利用Charles、Fiddler等工具拦截请求以上方式各有千秋,我们要说的是使用Swager API Docs和easy-mock生成模拟数据登录easy-mock创建项目点击+号创建项目填写项目信息归属 :默认已经生成好了项目名:与你的实际...

  • 如何使用EasyMock?

    如何使用EasyMock? 在前后端分离的概念中,前端脱离与后端工作,在对好接口之后,以及后端没有假数据的情况下,可以先采用折衷的办法来请求假数据,这就有了Mock.js,可以随机生成数据,拦截ajax请求。Easy Mock 是一个可视化,并且能快速生成 模拟数据 的持久化服务。 忘掉下面这些实用但麻烦的 Mock 方式吧。在你用了 Easy Mock 之后,你肯定会爱不释手的。 话不多说,先来看一下Mock.js的语法, 1. 属性值是字符串 String 'name|min-max': str

  • Easymock mock 异常处理的模拟代码

    [code="java"] @Test(expected = ReferenceRetryException.class) public void testTryErrorsButHasReturn() throws Exception { String schema = "BPOS"; Map parameters = new HashMap(); par...

  • EasyMock官方文档

    第一次翻译外文文档,由于水平有限,难免有纰漏之处,望海涵。

  • 用EasyMock进行单元测试:什么是EasyMoc

    原文:http://www.zhlwish.com/2012/06/29/easymock-1/ 用EasyMock进行单元测试:什么是EasyMock 发:周亮 我们都知道单元测试,也常常写单元测试,但是对于什么是单元测试却没有仔细思考过,大概觉得创建一个类继承TestCase,然后写一些assert语句就算是了吧。当然我也常常遇到有人认为在Java类中...

  • easy-mock 本地部署(挤需体验三番钟,里造会干我一样,爱象节款mock)

    前言 很多小伙伴问我怎么在自己公司的项目里面添加配置mock,在vue项目里面都知道怎么配置mock,在大型前端项目里面就一脸疑惑了。 我就回答他,你今天会在vue项目里面用,那天换公司是用angular、react,webix…等等 还是不会配置使用mock,就推荐用easymock, 所有前端项目都可以用管你啥jb框架,统统都搞定ojbk。就有人问了,easymock,为啥要本地部...

  • EasyMock 的简单使用

    在进行单元测试的时候,有时候我们需要测试的类引用了其他类,而其他的类处于某种原因并不方便调用(比如是连接数据库的Dao,或者是别人负责编写但是还没编写好的类)。 如果这个时候我们要测试自己写的类的方法,就可以使用Mock测试了。 百度百科的定义: mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。 现在我们来

  • EasyMock的简单使用

    package com.gewb.mavenTest; import java.util.HashMap; import java.util.Map; import org.easymock.EasyMock; import org.junit.Test; import com.gewb.mavenTest.entity.Parent; import com.gewb.mavenTest.entity.Student; /** * Unit test for simple App. */ pu.

  • EasyMock教程–入门

    在本文中,我将向您展示EasyMock是什么,以及如何使用它来测试Java应用程序。 为此,我将创建一个简单的Portfolio应用程序,并使用JUnit&EasyMock库对其进行测试。 在开始之前,让我们首先了解使用EasyMock的需求。 可以说,您正在构建一个Android移动应用程序来维护用户的股票投资组合。 您的应用程序将使用股票市场服务从真实服务器(例如NASDAQ)检索股票...

  • Easy-mock模拟数据使用指南

    Easy-mock模拟数据使用指南 官方文档 一. 基础使用 { "code": 0, "data": { "projects|5-10": [{ //随机生成5-10条 "adpartment|1": ["研发部", "市场部", "运营部"], "address": "@county(true)", ...

  • easyMock原理简述

    简述mock是一种简易直接的测试方法,在我们日常单元测试的时候,经常会使用到,本文会分析一个我们常见的用于mock的工具easyMock,简单分析其原理助于大家理解和使用。功能一览public interface Calculator { int add(int a,int b); }以上是一个计算器接口,用于计算加法,假设现在我们的合作伙伴还没有开发好这个加法的实现类,但是我们约定了这个加

  • EasyMock使用说明

    开发环境版本 JDK 1.5 JUnit 3.8 EasyMock 2.2 Eclipse 3.1...

  • 使用Mock模拟接口实现增删改查、分页、多条件查询

    使用Mock模拟接口实现增删改查、分页、多条件查询(英语)

Global site tag (gtag.js) - Google Analytics