NonBlockingServletIo

org.http4s.servlet.NonBlockingServletIo
final case class NonBlockingServletIo[F[_]](chunkSize: Int)(implicit evidence$3: Async[F]) extends ServletIo[F]

Use non-blocking reads and writes. Available only on containers that support Servlet 3.1.

This can support more concurrent connections on a smaller request thread pool than BlockingServletIo, but consumes more CPU per request. It is also known to cause IllegalStateExceptions in the logs under high load up through at least Tomcat 8.0.15. These appear to be harmless, but are operationally annoying.

Attributes

Source:
ServletIo.scala
Graph
Supertypes
trait Product
trait Equals
class ServletIo[F]
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Inherited methods

def bodyWriter(servletResponse: HttpServletResponse, dispatcher: Dispatcher[F])(response: Response[F]): F[Unit]

An alias for initWriter. In the future, this will be optimized with the dispatcher.

An alias for initWriter. In the future, this will be optimized with the dispatcher.

Attributes

dispatcher

currently ignored

Inherited from:
ServletIo
Source:
ServletIo.scala

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product
def requestBody(servletRequest: HttpServletRequest, dispatcher: Dispatcher[F]): Stream[F, Byte]

An alias for reader. In the future, this will be optimized with the dispatcher.

An alias for reader. In the future, this will be optimized with the dispatcher.

Attributes

dispatcher

currently ignored

Inherited from:
ServletIo
Source:
ServletIo.scala