`
uniseraph
  • 浏览: 83599 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

开发了一个高性能memcached java client

阅读更多
用mina开发了一个memcached java client ,性能测试表现良好, 用我的t61做客户端测试,最高能到28000tps。
代码在:http://commons-client.googlecode.com/svn/trunk/,有兴趣的朋友可以看看。我准备把这个项目开源,后面还有不少优化余地,有兴趣的朋友请和我联系,呵呵。


前提条件
1 jdk1.6
2 安装maven
3 安装ant

编译: ant
运行测试程序:  ant run -Dip=....  -Dthread=100 -Drepeat=10000 -Dsize=2
ip: memcached server ip
thread : 测试线程数
repeat : 每个线程循环此处,每次10000次,每次有两个memcache调用
size:  连接数
可以在命令行中输入参数,也可以修改build.properties中的默认参数


正在写文档,以后慢慢补上。

BTW, 有兴趣可以看看我blog的相关文档,http://uniseraph.iteye.com
分享到:
评论
10 楼 liyao20050101 2008-10-21  
补充下lib嘛。
9 楼 uniseraph 2008-10-21  
gmark 写道

可以用ivy管理依赖的包.

多谢,我先研究一下。
8 楼 uniseraph 2008-10-21  
chbest 写道

开源吗?开源的话我想看看


欢迎欢迎,呵呵。

已经放到http://commons-client.googlecode.com/svn/trunk/,如果访问有问题請和我联系。
7 楼 gmark 2008-10-21  
可以用ivy管理依赖的包.
6 楼 iso1600 2008-10-21  
干得漂亮,等稳定了我就用
5 楼 chbest 2008-10-21  
开源吗?开源的话我想看看
4 楼 uniseraph 2008-10-21  
官方的memcached java client我用过,采用的是连接池+堵塞的方式,性能比较差。之前我测试大约在8000tps,我的memcached java client采用的是nio的方式,只需要两个连接,就能到达25000tps。回头我会补上文档,解释一下我的实现。

jdk1.6不是必须的,回头我把@Override删掉,用jdk1.5应该也没什么问题。

至于既用maven又用ant是因为我觉得maven麻烦了一点,ant用起了比较简单,但是又希望使用maven的第三库管理功能,所以就成现在这样。

其实就编译而言,只用maven是可以的。
3 楼 movingboy 2008-10-20  
请教一下楼主:不知道你有没有用过spymemcached(http://code.google.com/p/spymemcached/)或whalin的memcached client for java(http://whalin.com/memcached/)?你的客户端与这两个相比有哪些创新的地方,能否介绍一下?

此外提两个小建议,不知可否改进一下:使用JDK 6这个要求有点苛刻吧?还有既要用maven,又要用ant似乎也有点累赘了......
2 楼 spxsjd 2008-10-20  
好东西,学习学习,哈哈
1 楼 uniseraph 2008-10-20  
补充一句:
我的t61装的是ubuntu8.04,没在windows测过。

相关推荐

    memcaChed java client jar包

    总的来说,`memcached java client jar包`是Java应用连接到Memcached服务器的关键组件,它允许开发者利用Memcached的高性能缓存能力来优化应用程序的性能,降低对数据库的依赖。通过选择合适的客户端库,如...

    memcached java client

    xmemcached是由Ketoo开发的一个高性能、高可用性的Java Memcached客户端。它提供了丰富的API,支持异步和同步操作模式,能够满足各种应用需求。以下是一些xmemcached的关键特性: - **高性能**:xmemcached利用NIO...

    memcached for java client 例子

    "memcached for java client 例子" 指的是一个使用Java语言编写的客户端库,用于与memcached缓存系统进行交互。Memcached是一种高性能、分布式内存对象缓存系统,常用于减轻数据库负载,提升Web应用的响应速度。 **...

    Memcached java的使用实例

    首先,我们需要创建一个`MemcachedClient`实例,连接到运行的Memcached服务器: ```java import net.spy.memcached.AddrUtil; import net.spy.memcached.MemcachedClient; import java.net.InetSocketAddress; ...

    memcached安装包以及MemCachedClient

    对于 Java 开发者,`MemCachedClient` 是一个常用的 Memcached 客户端库。这里我们关注的是 `java_memcached-release_2.6.6.jar` 文件,这是 Spymemcached 库的一个版本,它提供了与 Memcached 服务器通信的接口。 ...

    Memcached-Java-Client-release_2.6.1.zip

    - 创建一个简单的Java应用,使用Memcached-Java-Client 2.6.1实现用户登录信息的缓存,提高登录速度。 - 演示如何在Spring框架中配置和使用Memcached,结合Spring的AOP特性实现自动缓存管理。 通过以上内容,我们...

    MemCached Cache Java Client封装优化历程.docx

    Memcached 是一个高性能、分布式的内存对象缓存系统,主要用于减少数据库的负载,提高应用程序的性能。它通过在内存中存储数据来提供快速访问,而不是每次请求时都去查询数据库。Memcached 的设计目标是简洁、高效,...

    memcached 的简单java实例

    Memcached是一种高性能、分布式内存对象缓存系统,用于在Web应用程序中减少数据库负载,提高数据访问速度。它将数据和对象存储在内存中,以便快速检索,从而提高了应用程序的响应时间。Memcached是无模式的,这意味...

    java使用Memcached简单教程

    Memcached是一个高性能的分布式内存对象缓存系统,通过减轻数据库负载来加速动态Web应用,提高网站的浏览速度。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而极大地提高了应用程序的性能。 #### 二、...

    java中连接memcached服务器

    Memcached是一款高性能、分布式内存对象缓存系统,能够临时存储键值对数据,减轻数据库的压力。接下来,我们将深入探讨如何在Java环境中配置和使用Memcached。 首先,要连接到Memcached服务器,你需要一个Java...

    memcached java源码(performance分支)

    Memcached是一款高性能的分布式内存对象缓存系统,广泛应用于Web应用中,用于缓解数据库的负载。在Java环境中,我们常常使用Java客户端库来与Memcached服务器进行交互。这个文档将深入探讨"performance"分支的Java...

    memcached java简单实例

    在代码中,我们可以创建一个`MemcachedClient`实例,指定服务器的IP地址和端口: ```java import net.spy.memcached.MemcachedClient; import net.spy.memcached.AddrUtil; import ...

    Memcached学习笔记 — 第四部分:Memcached Java 客户端-gwhalin(1)-介绍及使用

    gwhalin的Memcached Java客户端是一个轻量级、高性能的库,使得Java开发者可以轻松地与Memcached服务器进行交互。 ### 一、Memcached简介 Memcached是Danga Interactive公司开发的一个开源项目,主要用于存储和检索...

    spring调用memcached client for java

    Memcached是一个高性能的分布式内存对象缓存系统,常用于减轻数据库负载,提升Web应用的响应速度。 首先,我们需要了解Spring的缓存抽象。Spring 3.1引入了缓存抽象,允许开发者通过简单的注解来实现缓存管理。它...

    java连接memcached示例代码

    Memcached是一款高性能、分布式内存对象缓存系统,用于减轻数据库负载,提高网站性能。下面我们将详细探讨如何在Java中使用Memcached以及相关知识点。 首先,我们需要引入一个Java库来与Memcached通信,例如...

    memcached-java链接所需jar包,以及java链接代码

    Memcached是一种高性能、分布式内存对象缓存系统,用于在分布式环境中快速存储和检索数据。它通过将数据存储在内存中,显著提高了数据访问速度。在Java应用中与Memcached进行交互,我们需要依赖特定的Java客户端库,...

    java使用memcached的实例

    在IT领域,尤其是在JavaWeb开发中,Memcached作为一种高性能、分布式的内存对象缓存系统,被广泛用于加速动态网络应用的加载速度。本文将详细解析如何在Java项目中使用Memcached,包括其配置方法以及一个具体的示例...

    java+memcached所需文件

    Java与Memcached结合使用可以构建高性能的分布式缓存系统,以提高Web应用程序的响应速度和数据处理能力。这里提供的文件包含在Windows环境下运行Memcached以及Java应用中集成Memcached所需的必要组件。 首先,我们...

    java使用memcached demo

    Memcached 是一个高性能、分布式的内存对象缓存系统,广泛应用于减轻数据库负载,提高Web应用的响应速度。在Java中,我们可以借助各种客户端库来与Memcached进行交互。本篇文章将深入探讨如何在Java项目中集成并使用...

Global site tag (gtag.js) - Google Analytics