使用Cassandra JMeter时无响应数据

时间:2015-01-07 09:03:30

标签: java cassandra jmeter

我是JMeter和Cassandra的新手,并尝试使用Apache Jmeter Cassandra插件进行测试目的

https://github.com/Netflix/CassJMeter/wiki

按照给出的步骤,我可以配置JMeter Cassandra插件。

  1. 在JMeter控制台中,我创建了一个新的ThreadGroup-> CassandraProperties,并在那里指定了所有与Cassandra相关的属性。 enter image description here

  2. 添加了SchemaProperties,如下所示。 enter image description here

  3. 添加了Cassandra获取范围切片 enter image description here

  4. 但是当我开始测试时,我在样本结果中获得了成功响应,但我的响应数据是空的 enter image description here

    My Users表不是空的,使用cql我可以查询数据,其架构如下:

    CREATE TABLE users (
      user_name text,
      gender text,
      password text,
      PRIMARY KEY ((user_name))
    ) WITH
      bloom_filter_fp_chance=0.010000 AND
      caching='KEYS_ONLY' AND
      comment='' AND
      dclocal_read_repair_chance=0.100000 AND
      gc_grace_seconds=864000 AND
      index_interval=128 AND
      read_repair_chance=0.000000 AND
      replicate_on_write='true' AND
      populate_io_cache_on_flush='false' AND
      default_time_to_live=0 AND
      speculative_retry='99.0PERCENTILE' AND
      memtable_flush_period_in_ms=0 AND
      compaction={'class': 'SizeTieredCompactionStrategy'} AND
      compression={'sstable_compression': 'LZ4Compressor'};
    

    所以当我执行Jmeter控制台时,我应该获得100计数结果和一些响应数据吗? 我被困在这里,无法理解......任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您可以在JMeter中查看有关Cassandra脚本的blazemeter教程:

  1. 下载驱动程序jar文件。之后,您可以将下载的jar文件添加到JMeter的类路径

  2. 添加Cassandra依赖项并将它们添加到JMeter类路径中

  3. 添加 - >采样器 - > JSR223采样器

  4. 提交您的请求

  5. 例如:

    import com.datastax.driver.core.Session;
    import com.datastax.driver.core.Cluster;
    Cluster cluster = Cluster.builder().addContactPoint("127.0.0.1").build();
    Session session = cluster.connect("test_keyspace");
    
    def results = session.execute("SELECT * FROM users");
    
    session.close();
    cluster.close();`
    
      

    您可以通过JMeter实现Cassandra负载测试,与您拥有的Cassandra版本无关。通过使用Groovy脚本语言,您无需关心JMeter支持哪些Cassandra功能,因为您可以自己实现操作