Closed GoogleCodeExporter closed 8 years ago
嗯,这会添加一下,谢谢
Original comment by killme2...@gmail.com
on 28 Dec 2011 at 7:51
你的修改是没有问题的,我已经合并进取了,非常感谢。1.3.6
即将发布。
Original comment by killme2...@gmail.com
on 13 Jan 2012 at 2:11
在如下场景下:
hibernate.memcached.connectionPoolSize设置为20,optimeout设置为5000;
xmemcached.connectionPoolSize设置为30,optimeout设置为5000;
hibernate缓存和xmemcached缓存分别对应不同的memcached服务器(各2
台),依然会出现timeout的错误,还有什么地方可以优化设置�
��让timeout出现的次数更低呢
Original comment by shai...@winxuan.com
on 13 Jan 2012 at 8:46
晕翻,开始用了公司的另外一个人的邮箱了。。。。
在如下场景下:
hibernate.memcached.connectionPoolSize设置为20,optimeout设置为5000;
xmemcached.connectionPoolSize设置为30,optimeout设置为5000;
hibernate缓存和xmemcached缓存分别对应不同的memcached服务器(各2
台),依然会出现timeout的错误,还有什么地方可以优化设置�
��让timeout出现的次数更低呢
Original comment by Boli.Ji...@gmail.com
on 13 Jan 2012 at 8:50
最主要的是我们的访问量并不大,按道理来说不应该出现timeo
ut的情况才对啊,烦请解释一下
Original comment by Boli.Ji...@gmail.com
on 13 Jan 2012 at 8:52
timeout跟访问量没有太大关系,跟数据大小很有关系,可以统�
��下你们的数据大小。
Original comment by killme2...@gmail.com
on 13 Jan 2012 at 9:27
统计了一下,数据大小主要分布在1k以内,网络层的TCP选项使
用的是默认配置,timeout的原因还有有什么别的影响因素嘛?
Original comment by Boli.Ji...@gmail.com
on 16 Jan 2012 at 5:03
读写比例不高?
用的是text协议还是binary?如果并发不大,我不建议设置连接池
。如果没有特别需求,也不建议用binary协议。
Original comment by killme2...@gmail.com
on 16 Jan 2012 at 5:36
用的是text,您的意思是不是说:timeout的原因是启用了nagle和�
��接池,但是并发不大,以至于发生了大部分跟memcached的交互
都是在等待时间超了之后才进行的?
nagle算法适用于一个连接池还是针对所有的连接池的呢?
Original comment by Boli.Ji...@gmail.com
on 16 Jan 2012 at 5:59
并发确实不大
Original comment by Boli.Ji...@gmail.com
on 16 Jan 2012 at 6:02
不是,我不敢下结论,因为我不知道你们系统的情况。是从��
�自己的经验来推断的。
你用的是1.3.5?
1.3.5又启用了nagle算法,在低并发的时候确实会让响应性受到�
��响。使用连接池,因为多了个管理和选择连接池的开销,如
果并发不大,这个开销抵过了链接池带来的好处。
我建议你将链接池设置为1,然后关闭nagle算法,并调小合并因�
��看看,合并因子是指这个
memcachedClient.setMergeFactor(50);
Original comment by killme2...@gmail.com
on 16 Jan 2012 at 6:16
恩,好的。谢谢
用的是1.3.5
合并因子有什么用呢?
Original comment by Boli.Ji...@gmail.com
on 16 Jan 2012 at 6:20
看这个
http://www.blogjava.net/killme2008/archive/2010/07/08/325564.html
Original comment by killme2...@gmail.com
on 16 Jan 2012 at 6:23
经测试(测试样本:10个线程每个线程访问100次,本机测试)
:(timeout时间设置为3秒)
1、不管启用不启用nagle算法,当连接池数>1,都会产生timeout��
�异常,随着连接池的增加,timeout出现的频率会增加。(memcac
hed服务器端的处理连接数使用的默认1024个,应该不会出现响�
��不过来的情况,问题出在哪儿呢?)
2、不启用nagle算法,MergeFactor设置为50,连接池设置为1,不会
出现timeout的异常,响应时间也很稳定。(MergeFactor值设置太��
�太小都不合适,平均响应时间都较大)
3、不启用nagle算法,MergeFactor设置为50,连接池设置为1,当线
程数增加到20,会出现timeout的情况
4、启用nagle算法,MergeFactor设置为50,连接池设置为1,不会出
现timeout的异常,响应时间也很稳定。但相较不启用nagle算法��
�均响应时间要大一些。
5、启用nagle算法,MergeFactor设置为50,连接池设置为1,当线程
数增加到20,会出现timeout的情况
Original comment by Boli.Ji...@gmail.com
on 16 Jan 2012 at 9:41
感谢你的测试,按照你的测试结果调整了默认参数,明天发��
�1.3.6
Original comment by killme2...@gmail.com
on 18 Mar 2012 at 10:07
好的,期待中。。。。
Original comment by Boli.Ji...@gmail.com
on 18 Mar 2012 at 10:29
xmemcached 1.3.6 released.
Original comment by killme2...@gmail.com
on 19 Mar 2012 at 2:13
Original issue reported on code.google.com by
Boli.Ji...@gmail.com
on 28 Dec 2011 at 7:49