繁体   English   中英

cassandra db连接缓慢

[英]cassandra db slow connection

我是第一次使用Java尝试cassandra db。 我有以下代码,其中与db(cluster.connect)的连接需要2-4秒。

我在localhost上有一个带有SSD磁盘的数据库。 我只有一个cassandra节点。 任何提示如何改善这一点?

public static void main(String[] args) {
        Cluster cluster;
        Session session;

        long start = System.currentTimeMillis();
        cluster = Cluster.builder().addContactPoint("10.90.1.15").withPort(9042).build();
        session = cluster.connect("demo");

        long connectiontime = System.currentTimeMillis();
        System.out.println(connectiontime - start);

        ResultSet results = session.execute("SELECT * FROM users");
        long querytime = System.currentTimeMillis();
        System.out.println(querytime - connectiontime);

        for (Row row : results) {
            System.out.format("%s %d\n", row.getString("firstname"), row.getInt("age"));
        }

            ResultSet results2 = session.execute("SELECT * FROM users");
            long querytime2 = System.currentTimeMillis();

            System.out.println(querytime2 - querytime);

           for (Row row : results2) {
                System.out.format("%s %d\n", row.getString("firstname"), row.getInt("age"));
            }

            cluster.close();
}

请记住,Cassandra连接有点重,因为它们只是设置一次然后长时间使用。 对于每个小操作,连接和断开连接都是不正确的。

话虽如此,2-4秒相当长。 当我连接到远程群集时,大约需要750毫秒。

您可以查看cassandra日志,看看它是否正在做一些奇怪的事情并等待某些事情超时。 您可以尝试使用“localhost”而不是机器IP作为联系点,看看是否有任何区别。 如果您查看日志,可以将日志级别增加到TRACE,您可能会看到它一直在哪里花费。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM