2017-10-10 41 views
1

我想在卡桑德拉创建缓慢来测试我的应用程序。有什么具体的方法来诱导卡桑德拉缓慢。在RDBMS中,我们使用锁定来等待其他操作,直到锁定被释放。作为卡桑德拉没有锁定,是否有任何其他的方法来创建僵局,缓慢等如何在Cassandra中创建缓慢?

回答

1

有很多方法可以做到这一点,我将列出二:

  1. 睡眠创建UDF /等待功能,如果您的Cassandra版本支持它。

链接到文档: https://docs.datastax.com/en/cql/3.3/cql/cql_using/useCreateUDF.html

  • 创建大的表(较大它是较慢它将运行),并运行:
  • 从表中选择some_column其中other_column ='东西'允许过滤;

    其中other_column不是表的分区键。这将导致全表扫描,并且由于Cassandra不是为它构建的,所以需要一些时间(也包括I/O和CPU)。

    0

    也许容易一些限制节点上的网络。根据操作系统的不同,有不同的选项。

    2

    你可以在这里看看我们的项目simulacron。 https://github.com/datastax/simulacron

    这是一个C */DSE模拟器,专门用于测试诸如竞争条件和错误条件等事情。您将不得不提前填写所有相关的查询,但这会让您引入等待时间或错误信息给您的回复。您还可以在本地机器上模拟大型群集。

    还有一个类似的工具叫做scassandra,它也有很多相同的功能。 http://www.scassandra.org/