反应式基础设施

反应式 Cassandra 支持包含广泛的功能:spring-doc.cadn.net.cn

对于大多数面向数据的任务,您可以使用ReactiveCassandraTemplate或存储库支持,它们使用丰富的对象映射功能。ReactiveCqlTemplate通常用于递增计数器或执行临时 CRUD作。ReactiveCqlTemplate还提供了回调方法,可以轻松获取底层 API 对象,例如com.datastax.oss.driver.api.core.CqlSession,这样您就可以直接与 Cassandra 通信。 Spring Data for Apache Cassandra 对各种 API 中的对象使用 DataStax Java 驱动程序中的对象一致的命名约定,以便立即熟悉它们,以便您可以将现有知识映射到 Spring API 上。spring-doc.cadn.net.cn

反应式使用分为两个阶段:组合和执行。spring-doc.cadn.net.cn

调用存储库方法允许您通过获取Publisher实例和应用运算符。 在您订阅之前,不会发生 I/O。 将反应式序列传递给反应式执行基础设施,例如 Spring WebFluxVert.x),订阅发布者并启动实际执行。 有关更多详细信息,请参阅 Project reactor 文档spring-doc.cadn.net.cn

响应式组合库

反应式空间提供了各种反应式组合库。 最常见的库是 RxJavaProject Reactorspring-doc.cadn.net.cn

Spring Data for Apache Cassandra 构建在 DataStax Cassandra 驱动程序之上。 驱动程序不是响应式的,但异步功能允许我们采用和公开PublisherAPI 依靠 Reactive Streams 计划提供最大的互作性。 静态 API,例如ReactiveCassandraOperations,通过使用 Project Reactor 的FluxMono类型。 Project Reactor 提供了各种适配器来转换反应式包装器类型 (FluxObservable和 back),但转换很容易使代码混乱。spring-doc.cadn.net.cn