SpringBoot 集成 WebFlux,请求大模型实现 “打字机” 流式响应效果

SpringBoot 集成 WebFlux,请求大模型实现 “打字机” 流式响应效果

一、WebFlux 简介

WebFlux官方文档

1.1 Spring MVC 和 Spring WebFlux 的区别?

Spring MVC 和 Spring WebFlux 都是Spring框架中用于构建Web应用程序的模块,它们之间的主要区别在于它们处理并发请求的方式和所采用的编程模型。

1、编程模型:

  • Spring MVC: 采用同步的、阻塞的编程模型。每个请求都会在一个单独的线程中处理,线程会一直阻塞直到请求完成。
  • Spring WebFlux: 采用异步的、非阻塞的编程模型。它基于Reactive Streams标准,使用反应式编程的理念,可以更有效地处理大量并发请求,减少线程资源的浪费。

2、并发处理:

  • Spring MVC: 使用Servlet API中的阻塞IO来处理请求,每个请求需要一个独立的线程,如果线程池中的线程用尽,新的请求就会被阻塞。
  • Spring WebFlux: 使用非阻塞IO,通过少量的线程处理大量的并发请求。这可以提高系统的吞吐量,因为不需要为每个请求分配一个独立的线程。

3、适用场景:

  • Spring MVC: 适用于传统的同步IO的应用场景,特别是那些对实时性要求不是很高的场景。
  • Spring WebFlux: 适用于需要处理大量并发请求、对实时性要求高的场景,比如实时通信、实时数据推送等。

总的来说,如果需要处理大量并发请求,并且对实时性有较高要求,可以选择Spring WebFlux

1.2 Spring MVC 和 Spring WebFlux 是否可以同时存在?

答案:可以同时存在。如官方文档所述:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值