All Downloads are FREE. Search and download functionalities are using the official Maven repository.

config.io_helidon_webserver_http2_Http2Config.adoc Maven / Gradle / Ivy

///////////////////////////////////////////////////////////////////////////////

    Copyright (c) 2023 Oracle and/or its affiliates.

    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
    You may obtain a copy of the License at

        http://www.apache.org/licenses/LICENSE-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

///////////////////////////////////////////////////////////////////////////////

ifndef::rootdir[:rootdir: {docdir}/..]
:description: Configuration of io.helidon.webserver.http2.Http2Config
:keywords: helidon, config, io.helidon.webserver.http2.Http2Config
:basic-table-intro: The table below lists the configuration keys that configure io.helidon.webserver.http2.Http2Config
include::{rootdir}/includes/attributes.adoc[]

= Http2Config (webserver.http2) Configuration

// tag::config[]


Type: link:{javadoc-base-url}/io.helidon.webserver.http2/io/helidon/webserver/http2/Http2Config.html[io.helidon.webserver.http2.Http2Config]



This type provides the following service implementations:

- `io.helidon.webserver.spi.ProtocolConfig`


== Configuration options



.Optional configuration options
[cols="3,3a,2,5a"]

|===
|key |type |default value |description

|`flow-control-timeout` |Duration |`PT0.1S` |Outbound flow control blocking timeout configured as java.time.Duration
 or text in ISO-8601 format.
 Blocking timeout defines an interval to wait for the outbound window size changes(incoming window updates)
 before the next blocking iteration.
 Default value is `PT0.1S`.

 
ISO_8601 format examples:
PT0.1S100 milliseconds
PT0.5S500 milliseconds
PT2S2 seconds
@return duration @see ISO_8601 Durations |`initial-window-size` |int |`1048576` |This setting indicates the sender's maximum window size in bytes for stream-level flow control. Default and maximum value is 231-1 = 2147483647 bytes. This setting affects the window size of HTTP/2 connection. Any value greater than 2147483647 causes an error. Any value smaller than initial window size causes an error. See RFC 9113 section 6.9.1 for details. @return maximum window size in bytes |`max-concurrent-streams` |long |`8192` |Maximum number of concurrent streams that the server will allow. Defaults to `8192`. This limit is directional: it applies to the number of streams that the sender permits the receiver to create. It is recommended that this value be no smaller than 100 to not unnecessarily limit parallelism See RFC 9113 section 6.5.2 for details. @return maximal number of concurrent streams |`max-frame-size` |int |`16384` |The size of the largest frame payload that the sender is willing to receive in bytes. Default value is `16384` and maximum value is 224-1 = 16777215 bytes. See RFC 9113 section 6.5.2 for details. @return maximal frame size |`max-header-list-size` |long |`8192` |The maximum field section size that the sender is prepared to accept in bytes. See RFC 9113 section 6.5.2 for details. Default is 8192. @return maximal header list size in bytes |`requested-uri-discovery` |xref:{rootdir}/config/io_helidon_http_RequestedUriDiscoveryContext.adoc[RequestedUriDiscoveryContext] |{nbsp} |Requested URI discovery settings. @return settings for computing the requested URI |`send-error-details` |boolean |`false` |Whether to send error message over HTTP to client. Defaults to `false`, as exception message may contain internal information that could be used as an attack vector. Use with care and in cases where both server and clients are under your full control (such as for testing). @return whether to send error messages over the network |`validate-path` |boolean |`true` |If set to false, any path is accepted (even containing illegal characters). @return whether to validate path |=== // end::config[]




© 2015 - 2025 Weber Informatics LLC | Privacy Policy