用jmeter测试cassandra数据库

cassandra database testing with jmeter

我已经在本地系统上安装了 cassandra CQL shell,我正在使用 jmeter v3.0 在 cassandra CQL shell 上测试每秒查询数 (QPS)。我已经用 jmeter 安装了 "cassandra support" 在 "plugin manager" 中可用的插件。

我在 cassandra(keyspace1) 中创建了键空间,创建了一个 table(student) 并在 CQL shell.

中添加了一些数据

我已经从配置元素中添加了 "cassandra properties" 并在 jmeter 中输入了属性。

属性如下:

我添加了 "cassandra get" 采样器。

添加了 "view results tree" 侦听器。

当我 运行 它时,我收到以下错误:

ERROR: java.lang.RuntimeException: org.apache.thrift.transport.TTransportException: Read a negative frame size (-2080374784)!

我已经给出了 "schema properties" 在 github 上看到的结果。 但没有用。我遇到了同样的错误。

谁能建议我如何解决这个错误?

ERROR: java.lang.RuntimeException: org.apache.thrift.transport.TTransportException: Read a negative frame size (-2080374784)!

我想使用 cassandra 采样器对数据库进行放置、获取和删除操作。

您使用的 Netflix 插件似乎已被弃用,因为它使用了已被弃用的 Cassandra thrift API(该插件在 github 中也没有很多近期提交) .

查看公告here and here

即使您使用此插件成功测试,它也不能很好地代表当前客户端使用(因此负载)。

恕我直言,您应该使用 JSR223 groovy 脚本(预处理器和采样器)进行测试,并在脚本中使用 Datastax 标准 java 驱动程序 + CQL。我前段时间做过,效果很好。 (更新:已记录 here

或者可以尝试 this JMeter plugin 来自 Datastax 的人,它似乎使用 CQL 。我没试过,但看起来不错。

HTH,

阿兰