因此,testrunner
过于复杂,cbloadworkgen
没有给出请求时间,并且mcsoda
似乎与membase协议有关(因此执行memcached直接测试 - 完全避免了群集层)
还有别的吗?或者使用其中一种工具真正替换沙发基地的任何已知方法? 我需要时间为99%,95%的请求。
答案 0 :(得分:4)
您是在引用开发或生产服务器方案吗? Couchbase延迟本身不会成为瓶颈 - 它基本上只是网络延迟和导致延迟的应用程序堆栈(例如PHP)。
我使用weighttp工具主要测试开发场景中可能的请求/秒 - 该工具还应该为每个HTTP请求提供平均延迟。你可以find my setup on GitHub.使用真正的HTTP请求调用gwan C-servlet进行多个CB查询。
如果您想了解如何使用couchbase获得最佳延迟和吞吐量:
通过这种方式,您可以获得令人难以置信的性能,如果使用一个像样的本地节点(i7 4770k,32 GB DDR3-1600),240 GB SSD(德国这里约75美元/月),可以获得高达300.000 ops /秒的性能如果在集群中则更少(不确定原因)。这是一个8节点CouchBase设置(带有24个额外的负载生成器节点)我使用上述测试基准运行:
结论是:不要担心沙发基地本身。只担心您自己的应用程序架构/代码及其延迟。有一件事是,CouchBase知道魔法 - 另一件事是即使它的“坏”也是如此。 - 你很难在其他产品上获得更好的延迟。
答案 1 :(得分:3)
尝试将cbc-pillowfight
作为libcouchbase-tools
包的一部分提供。这支持memcached和couchbase协议,并提供类似于您想要的时间。例如:
cbc pillowfight -h localhost -b my_bucket -i 10000 -T -d
-T
显示时间,-d
启用memcached(哑)节点。确保将my_bucket
更改为您的存储桶的名称。完整文档位于cbc
man page。
示例定时输出(为简洁而剪切):
[1397065322.061025] Populate +---------+---------+---------+---------+ [110 - 119]us |################ - 68 [120 - 129]us |######################################## - 163 [130 - 139]us |######################### - 105 [140 - 149]us |###################### - 93 [150 - 159]us |####################### - 94 ... +---------------------------------------- [1397065322.070389] Run +---------+---------+---------+---------+ [110 - 119]us |################ - 69 [120 - 129]us |######################################## - 165 [130 - 139]us |########################## - 109 [140 - 149]us |###################### - 94 [150 - 159]us |####################### - 95 [160 - 169]us |################### - 81 [170 - 179]us |############### - 62 [180 - 189]us |############### - 63 [190 - 199]us |########### - 46 [200 - 209]us |######## - 35 [210 - 219]us |######### - 39 ... +----------------------------------------