响应式
响应式系统 (Reactive systems)
响应式系统具有某些特性,使其成为 低延迟、高吞吐量 工作负载的理想选择。Project Reactor 和 Spring 产品组合协同工作,使开发人员能够构建 响应迅速、弹性、可伸缩和消息驱动 的企业级响应式系统。
什么是响应式处理?(What is reactive processing?)
响应式处理是一种范式,它使开发人员能够构建 非阻塞、异步 的应用,能够处理背压(流控制)。
为什么要使用响应式处理?(Why use reactive processing?)
响应式系统能 更好地利用现代处理器。此外,响应式编程中包含的 背压 确保了 解耦组件之间更好的弹性。(即,如何增强分布式或解耦系统的 “弹性 (Resilience)”)
Project Reactor
Project Reactor 是一个 完全非阻塞 的基础,内置背压支持。它是 Spring 生态系统中响应式堆栈的基石,并在 Spring WebFlux、Spring Data 和 Spring Cloud Gateway 等项目中得到应用。
了解更多 (Learn more)
响应式微服务 (Reactive Microservices)
开发者从阻塞式代码转向非阻塞式代码的主要原因之一是 效率。响应式代码以 更少的资源完成更多的工作。Project Reactor 和 Spring WebFlux 让开发者能够利用 多核、下一代处理器 的优势——处理 潜在的大量并发连接。借助响应式处理,您可以用 更少的微服务实例 满足更多的并发用户。
使用 Spring Boot 的响应式微服务 (Reactive Microservices With Spring Boot)
Spring 产品组合提供了 两个并行堆栈。一个是基于 Servlet API,带有 Spring MVC 和 Spring Data 构造。另一个是 完全响应式 的堆栈,利用 Spring WebFlux 和 Spring Data 的响应式仓库 (reactive repositories)。在这两种情况下,Spring Security 都通过对这两个堆栈的 原生支持 为您提供保障。
与常见技术的集成 (Integration with common technologies)
以响应式方式访问和处理数据非常重要。MongoDB、Redis 和 Cassandra 都在 Spring Data 中具有 原生响应式支持。许多关系型数据库(Postgres、Microsoft SQL Server、MySQL、H2 和 Google Spanner)通过 R2DBC 具有 响应式支持。在消息传递领域,Spring Cloud Stream 也支持对 RabbitMQ 和 Kafka 等平台的 响应式访问。