gpt4 book ai didi

java - 使用 datastax java 驱动程序 2.0 的多线程

转载 作者:行者123 更新时间:2023-11-29 06:34:05 27 4
gpt4 key购买 nike

我的数据模型基于时间序列(在 cassandra CF 中插入来自各种来源的提要。)任何人都可以建议如何在多线程中插入。?使用类似于多线程的 executeAsync 方法执行查询吗?我需要设置 cassandra.yaml 的任何属性来实现多线程吗?或任何其他先决条件。

最佳答案

该驱动程序可以安全地用于多线程。您通常要做的是构建您的 Cluster 并在应用程序启动期间获取一个 Session 实例,然后在所有线程之间共享该 Session

如何处理多线程取决于您的代码。我也不知道 SQS,但我想你要么有多个消费者从队列中轮询并自己处理消息,要么可能将消息分派(dispatch)给工作池。

关于executeAsync,返回的ResultSetFuture实现了Guava的ListenableFuture,所以可以通过addListener注册成功回调.但是你必须提供一个 Executor 来运行回调(我不推荐 MoreExecutors#sameThreadExecutor ,因为你的回调最终会运行在驱动程序的一个 I/O 线程上)。

正如 Carlo 所提到的,一个简单的方法是使用同步 execute,并让您的 worker 阻塞,直到它收到来自 Cassandra 的响应,然后确认该消息。

关于java - 使用 datastax java 驱动程序 2.0 的多线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24989594/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com