我使用 cassandra 作为 Web 应用程序(在 Java 中)的后端,其中每个用户需要创建唯一的 session 或使用单个 session ,如下面的 url 所示?
我在此链接中阅读了 session 信息。 https://docs.datastax.com/en/drivers/java/2.0/com/datastax/driver/core/Session.html
它说 Session 实例是线程安全的。意味着一次有一个线程可以使用该实例。
还写道,每个 session 维护与集群节点的多个连接。
问题是
- 如果 session 实例上只能使用一个线程,那么为每个 session 创建与集群节点的多个连接有何用处?
- 它不会减慢 session 上的多线程操作吗?
最佳答案
你错了,与不同线程共享实例是安全的:
A session holds connections to a Cassandra cluster, allowing it to be queried. Each session maintains multiple connections to the cluster nodes...
Session instances are thread-safe and usually a single instance is enough per application.
线程安全意味着与其他线程共享实例是安全的。这并不意味着您只能从一个中使用它。
关于java - 如何使用 cassandra session 进行多线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48079941/