servlet 3.1具有哪些Java功能?

时间:2019-06-29 12:20:57

标签: java io nio nonblocking servlet-3.1

已经有好几天我试图了解servlet 3.0、3.1和spring webflux的功能。

目前,我了解servlet 3.0的用途以及它在幕后的工作方式。接下来的一点是Servlet 3.1。正如所有资源中所述,我读过servlet 3.1 solves the problem of blocking IO in servlet 3.0

  

换句话说,对于Servlet 3.0,只有请求处理部分   变为异步,但不是用于服务请求和响应的I / O。   如果有足够的线程阻塞,这将导致线程饥饿并影响   性能。
  使用Servlet 3.1 NIO,此问题可以通过ReadListener和   WriteListener接口。这些在ServletInputStream中注册   和ServletOutputStream。侦听器具有的回调方法是   当内容可供读取或写入时调用   Servlet容器不会阻塞I / O线程。所以这些   I / O线程已释放,现在可以满足其他增加的请求   性能。

我想了解底层的Java功能,该功能允许您了解 可以读取内容或编写内容,而不会在I / O线程上阻塞servlet容器。我不知道Java中的那种机制。什么时候添加到java(哪个版本)的?

您能解释一下该功能以及它如何在较高的抽象水平上工作吗?

P.S。

我发现以下video与我的问题有关,并且找到了以下快照: enter image description here

我的问题主要集中在容器如何理解我们可以在不阻塞的情况下读取/写入数据。

0 个答案:

没有答案