我一直在开发一个需要同时进行定期写入和大量读取的应用程序。
该应用程序存储了一些大小不是很大的文本列,其中一个映射是表中最大的列。
在 Scala 中使用 Phantom-DSL(下面的 Datastax Java 驱动程序),当数据大小增加时,我的应用程序崩溃。
这是我的应用程序的日志。
[error] - com.websudos.phantom - All host(s) tried for query failed (tried: /127.0.0.1:9042 (com.datastax.driver.core.OperationTimedOutException: [/127.0.0.1:9042] Operation timed out))
这是cassandra 日志。
我已将 Cassandra 日志发布在 pastebin 中,因为它们非常大,无法嵌入答案中。
我似乎无法理解这次崩溃的原因。我尝试增加超时并关闭行缓存。
据我了解,这是一个基本问题,可以通过针对这种特殊情况调整 cassandra 来解决。
我的 cassandra 使用来自不同的数据源。所以写入不是很频繁。但是读取的大小很大,因为一次可能需要超过 300K 行,然后需要通过 HTTP 传输。