我正在尝试了解 Datastax Cassandra Driver 中的连接池,以便更好地在我的 Web 服务中使用它。
我有 1.0 版的文档。它说:
Java 驱动程序使用异步连接,因此可以在同一连接上同时提交多个请求。
他们对连接的理解是什么?当连接到一个集群时,我们有:一个Builder、一个Cluster和一个Session。其中哪一个是连接?
比如有这个参数:
maxSimultaneousRequestsPerConnection - 到主机的所有连接上的同时请求数,之后创建更多连接。
因此,在连接池的情况下(这是我所期望的),这些连接是自动创建的。但究竟是什么联系?集群对象?会议?
我正在尝试决定在我的网络服务中保持“静态”的内容。目前,我决定让 Builder 保持静态,因此对于每次调用,我都会创建一个新的集群和一个新的会话。这个可以吗?如果集群是连接,那么应该没问题。但是是吗?现在,记录器说,对于每个呼叫:
2013:12:06 12:05:50 DEBUG Cluster:742 - 使用接触点启动新集群
2013:12:06 12:05:50 DEBUG ControlConnection:216 - [控制连接] 刷新节点列表和令牌映射
2013:12:06 12:05:50 调试 ControlConnection:219 - [控制连接] 刷新模式
2013:12:06 12:05:50 DEBUG ControlConnection:147 - [控制连接] 成功连接到...
那么,它每次都连接到集群吗?这不是我想要的,我想重用连接。
那么,连接实际上是Session?如果是这种情况,我应该保持集群静态,而不是生成器。
我应该调用什么方法,以确保尽可能重用连接?