NonBlockingServletIo

org.http4s.servlet.NonBlockingServletIo
final case class NonBlockingServletIo[F[_]](chunkSize: Int)(implicit F: 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 Serializable
trait Product
trait Equals
trait ServletIo[F]
class Object
trait Matchable
class Any

Members list

Concise view

Value members

Concrete methods

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

Attributes

Definition Classes
Source:
ServletIo.scala
override def requestBody(servletRequest: HttpServletRequest, dispatcher: Dispatcher[F]): Stream[F, Byte]

Attributes

Definition Classes
Source:
ServletIo.scala

Inherited methods

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product