BlazeServerBuilder is the component for the builder pattern aggregating different components to finally serve requests.
Variables:
- Value parameters:
- banner:
Pretty log to display on server start. An empty sequence such as Nil disables this
- bufferSize:
Buffer size to use for IO operations
- chunkBufferMaxSize
Size of the buffer that is used when Content-Length header is not specified.
- connectorPoolSize:
Number of worker threads for the new Socket Server Group
- httpApp:
The services that are mounted on this server to serve..
- idleTimeout:
Period of Time a connection can remain idle before the connection is timed out and disconnected. Duration.Inf disables this feature.
- isHttp2Enabled:
Whether or not to enable Http2 Server Features
- maxConnections:
The maximum number of client connections that may be active at any time.
- maxHeadersLen:
Maximum data that composes the headers. If exceeded returns a 400 Bad Request.
- maxRequestLineLen:
Maximum request line to parse If exceeded returns a 400 Bad Request.
- maxWebSocketBufferSize:
The maximum Websocket buffer length. 'None' means unbounded.
- responseHeaderTimeout:
Time from when the request is made until a response line is generated before a 503 response is returned and the
HttpApp
is canceled- serviceErrorHandler:
The last resort to recover and generate a response this is necessary to recover totality from the error condition.
- socketAddress:
Socket Address the server will be mounted at
- Companion:
- object
- Source:
- BlazeServerBuilder.scala
Type members
Types
Value members
Concrete methods
Configures the compute thread pool used to process some async computations.
Configures the compute thread pool used to process some async computations.
This defaults to cats.effect.Async[F].executionContext
. In
almost all cases, it is desirable to use the default.
The Blaze server has a single-threaded event loop receiver used
for picking up tcp connections which is completely separate to
this pool. Following picking up a tcp connection, Blaze shifts
to a compute pool to process requests. The request processing
logic specified by the HttpApp
is executed on the
cats.effect.Async[F].executionContext
. Some of the other async
computations involved in request processing are executed on this
pool.
- Source:
- BlazeServerBuilder.scala
Configure HTTP parser length limits
Configure HTTP parser length limits
These are to avoid denial of service attacks due to, for example, an infinite request line.
- Value parameters:
- maxHeadersLen
maximum data that compose headers
- maxRequestLineLen
maximum request line to parse
- Source:
- BlazeServerBuilder.scala
Configures the server with TLS, using the provided SSLContext
and its
default SSLParameters
Configures the server with TLS, using the provided SSLContext
and its
default SSLParameters
- Source:
- BlazeServerBuilder.scala
Configures the server with TLS, using the provided SSLContext
and SSLParameters
.
Configures the server with TLS, using the provided SSLContext
and SSLParameters
.
- Source:
- BlazeServerBuilder.scala
Deprecated methods
- Deprecated
- Source:
- BlazeServerBuilder.scala
- Deprecated
- Source:
- BlazeServerBuilder.scala
- Deprecated
- Source:
- BlazeServerBuilder.scala
Inherited methods
Runs the server as a process that never emits. Useful for a server that runs for the rest of the JVM's life.
Runs the server as a process that never emits. Useful for a server that runs for the rest of the JVM's life.
- Inherited from:
- ServerBuilder
- Source:
- ServerBuilder.scala
Runs the server as a Stream that emits only when the terminated signal becomes true. Useful for servers with associated lifetime behaviors.
Runs the server as a Stream that emits only when the terminated signal becomes true. Useful for servers with associated lifetime behaviors.
- Inherited from:
- ServerBuilder
- Source:
- ServerBuilder.scala
Returns the backend as a single-element stream. The stream does not emit until the backend is ready to process requests. The backend is shut down when the stream is finalized.
Returns the backend as a single-element stream. The stream does not emit until the backend is ready to process requests. The backend is shut down when the stream is finalized.
- Inherited from:
- BackendBuilder
- Source:
- BackendBuilder.scala
Disable the banner when the server starts up
Disable the banner when the server starts up
- Inherited from:
- ServerBuilder
- Source:
- ServerBuilder.scala