如何为多线程使用cassandra会话?

时间:2018-01-03 15:01:18

标签: java multithreading session cassandra

我在web应用程序中使用cassandra作为后端(在java中),每个用户需要创建唯一会话或使用单个会话,如下面的url?

我在此链接中阅读了会话信息。 https://docs.datastax.com/en/drivers/java/2.0/com/datastax/driver/core/Session.html

它说会话实例是线程安全的。表示一次一个线程可以使用此实例。

还写入了每个会话维护与群集节点的多个连接。

问题是

  1. 如果只有一个线程可以在会话实例上使用,那么每个会话创建多个连接到群集节点的用途是什么?
  2. 它不会减慢会话中的多线程操作吗?

1 个答案:

答案 0 :(得分:2)

你弄错了,用不同的线程共享一个实例是安全的:

  

会话保存与Cassandra集群的连接,允许查询它。每个会话都维护与群集节点的多个连接......

     

会话实例是线程安全的,每个应用程序通常只有一个实例。

线程安全意味着与其他线程共享实例是安全的。这并不意味着您只能从一个单独使用它。