spring boot 2.0

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_30364013/article/details/80149871

java8 tomcat8.5 Jetty9.4 hibernate5.2 thymeleaf3 SendGrid3.2 Gradle3.4

spring5.x响应式编程

响应式编程管理数据生产者和消费者之间的异步数据流,它们需要以流畅的方式对数据进行响应。所以,响应式编程都是异步和事件驱动的流畅应用程序,需要少量的线程进行缩放。
并行计算:阿姆达尔定律
Servlet【request/response】:阻塞 + 线程池
Netty :非阻塞 + 事件循环
响应式编程模型:everything is stream 对象:subscribe publisger 事件:subscribe onNext onCompleted onError

spring MVC spring WebFlux[非阻塞、事件驱动] Flux Mono
Spring MVC 执行需要 Servlet 容器,而 Spring Web Reactive 也可以在非 Servlet 运行时上运行,比如在 Netty 和 Undertow 上运行。
Reactive数据库支持:cassandra、MongoDB、couchbase、Redis

RestTemplate WebClient
ClientHttpRequest 和 ClientHttpResponse 抽象将请求和响应主体使用 Flux 公开,并在读和写端提供完全背压支持。

Spring 5 的局限
对 Reactive 应用程序进行故障诊断有点困难,并且你有可能在解决问题的同时,意外地阻塞了已经引入的代码。
大多数传统的基于 Java 的集成库仍然是阻塞的。
可用于 Reactive 数据存储的选项是非常有限的,少数 NoSQL 数据库(如 MongoDB)除外。
Spring Security 仍然不被支持。

Actuator / Actuator Endpoint
支持Jersey RESTful Web服务
支持基于反应式理念的WebFlux Web App
新的端点映射 /beans、/health
简化用户自定义端点的创建 @Enpoint @ReadOperation @WriteOperation
增强端点的安全性

Metrics / Micrometer

Configuration properties binding

猜你喜欢

转载自blog.csdn.net/qq_30364013/article/details/80149871