【发布时间】:2015-04-25 03:47:24
【问题描述】:
让我们看一个生产环境中的 java ee 应用程序,它使用准备好的语句。让我们假设它准备了有关其会话 bean 初始化的必需语句。
在 cassandra 中,每个准备好的语句都有一个 id。如果现在重启cassandra,java ee应用是否也需要重启?
【问题讨论】:
标签: java jakarta-ee cassandra
让我们看一个生产环境中的 java ee 应用程序,它使用准备好的语句。让我们假设它准备了有关其会话 bean 初始化的必需语句。
在 cassandra 中,每个准备好的语句都有一个 id。如果现在重启cassandra,java ee应用是否也需要重启?
【问题讨论】:
标签: java jakarta-ee cassandra
几乎所有 Cassandra 客户端都应该支持这种情况,而无需重新启动(据我所知,所有 datastax 驱动程序都这样做)。例如,在 java-driver 中,当一个节点关闭并再次启动时,它在将其标记为可用时所做的第一件事就是reprepare all PreparedStatements your application has registered。
此外,如果您在应用程序中使用 PreparedStatement 进行查询,并且 Cassandra 节点响应它不知道该语句,client should prepare that query and retry the request。
【讨论】: