• spring5响应式编程


    1、Spring5新特性
        
    2、响应式编程
    响应式编程:非阻塞应用程序,借助异步和事件驱动还有少量的线程垂直伸缩,而非横向伸缩(分布式集群)
    当Http连接缓慢的时候,从数据库到Http数据响应中也会慢下来甚至停止,直到网速恢复后(背压)
    响应式编程的转变:命令式编程转换为声明式编程

    响应式编程的背压:
    生产者消费者模型:线程交互  notify wait
    背压就是保证生产者不会出现过度生产,也会保证消费者不会过度消费

    WebFlux  内置Netty

    3、Spring5的响应式编程的实现
    响应式服务端的实现方式2种:
    第一种:注解式应用  
    SpringMVC的注解
    只是映射方法的返回值:Mono和Flux

        1、创建SpringBoot项目
            记得选择响应式Web应用
        2、创建底层类
            模拟数据
        3、创建控制器
        4、创建映射方法
            返回值为Mono或者是Flux
            
            Mono:单个值得数据流
            Flux:多个值得数据流
        5、运行
            SpringBoot 只需要运行开关类就可以
            
        6、测试
            基于浏览器测试
    第二种实现:函数式实现
        1、创建SpringBoot项目
            记得选择响应式Web应用
        2、创建底层类
            模拟数据
        3、创建数据生成类
            dao---generator   Mono/Flux
        4、创建数据解析器
            service---handler   Mono<ServerResponse>
        5、创建映射方法
            controller---router
            RouterFunction
            Mono:单个值得数据流
            Flux:多个值得数据流
        6、运行
            SpringBoot 只需要运行开关类就可以
            
        7、测试
            基于浏览器测试

  • 相关阅读:
    HeidiSQL
    PostgreSQL
    MariaDB
    NLog
    0 vs null
    忘带手机的那么一天
    江城子·己亥年戊辰月丁丑日话凄凉
    单体 VS 微服务
    java面向对象(四)之重写、重载
    java面向对象(三)之抽象类,接口,向上转型
  • 原文地址:https://www.cnblogs.com/zsqfightyourway/p/9263804.html
Copyright © 2020-2023  润新知