Cassandra EC2 响应时间缓慢

Cassandra EC2 响应时间缓慢

我已经在本地使用 Cassandra 进行开发有一段时间了,查询的响应时间大约为 50 毫秒。

我已经从 cassandra 社区 ami 设置了一个 5 节点 EC2 集群,一切顺利,opscenter 已启动并运行,没有任何问题。

当我从 aws 网络之外的机器执行任何查询时,无论是创建键空间,还是在空表上执行 select *,响应时间都超过 20 秒。

当我从同一个区域的机器查询时,响应时间在1到2秒之间,仍然非常慢。

EC2 机器都是 m1.large eu-west-1a

您知道为什么会发生这种情况或我应该在哪里查找问题吗?

答案1

当前版本的 DevCenter 旨在支持作为主要场景运行(较长的)CQL 脚本(与一个接一个执行查询的交互式控制台不同)。DevCenter 使用 Cassandra 的 DataStax Java 驱动程序作为底层连接器。

对于上述场景,为了确保没有“冲突”,每次执行都会创建一个新的会话。初始化会话时,驱动程序会执行自动节点发现、创建连接池等。基本上,它会做很多准备工作。根据从客户端计算机到 EC2 节点的延迟、集群的大小以及这些节点的配置(请参阅连接要求),此初始化阶段的成本可能非常高。

您可以想象,准备所花费的时间不会占运行 DDL 脚本的很大一部分,也不会占插入/更新的很大一部分。但对于交互式场景,它将导致次优行为(您所描述的行为)

DevCenter 的下一版本将解决交互式场景并对其进行优化,以便用户体验达到您的预期。支持此场景是我们优先考虑的事情。

取自:https://stackoverflow.com/questions/21219300/cassandra-native-transport-port-9042-slow-on-ec2-machine/21224540#21224540

相关内容