Interface ServerLimitsConfig


public interface ServerLimitsConfig
  • Method Details

    • maxHeaderSize

      @WithDefault("20K") MemorySize maxHeaderSize()
      The maximum length of all headers, up to Integer.MAX_VALUE bytes.
    • maxBodySize

      @WithDefault("10240K") Optional<MemorySize> maxBodySize()
      The maximum size of a request body, up to Long.MAX_VALUE bytes.
    • maxChunkSize

      @WithDefault("8192") MemorySize maxChunkSize()
      The max HTTP chunk size, up to Integer.MAX_VALUE bytes.
    • maxInitialLineLength

      @WithDefault("4096") int maxInitialLineLength()
      The maximum length of the initial line (e.g. "GET / HTTP/1.0").
    • maxFormAttributeSize

      @WithDefault("2048") MemorySize maxFormAttributeSize()
      The maximum length of a form attribute, up to Integer.MAX_VALUE bytes.
    • maxFormFields

      @WithDefault("256") int maxFormFields()
      Set the maximum number of fields of a form. Set to -1 to allow unlimited number of attributes.
    • maxFormBufferedBytes

      @WithDefault("1K") MemorySize maxFormBufferedBytes()
      Set the maximum number of bytes a server can buffer when decoding a form. Set to -1 to allow unlimited length, up to Integer.MAX_VALUE bytes.
    • maxParameters

      @WithDefault("1000") int maxParameters()
      The maximum number of HTTP request parameters permitted for incoming requests.

      If a client sends more than this number of parameters in a request, the connection is closed.

    • maxConnections

      OptionalInt maxConnections()
      The maximum number of connections that are allowed at any one time. If this is set it is recommended to set a short idle timeout.
    • headerTableSize

      OptionalLong headerTableSize()
      Set the SETTINGS_HEADER_TABLE_SIZE HTTP/2 setting.

      Allows the sender to inform the remote endpoint of the maximum size of the header compression table used to decode header blocks, in octets. The encoder can select any size equal to or less than this value by using signaling specific to the header compression format inside a header block. The initial value is 4,096 octets.

    • maxConcurrentStreams

      OptionalLong maxConcurrentStreams()
      Set SETTINGS_MAX_CONCURRENT_STREAMS HTTP/2 setting.

      Indicates the maximum number of concurrent streams that the sender will allow. This limit is directional: it applies to the number of streams that the sender permits the receiver to create. Initially, there is no limit to this value. It is recommended that this value be no smaller than 100, to not unnecessarily limit parallelism.

    • maxFrameSize

      OptionalInt maxFrameSize()
      Set the SETTINGS_MAX_FRAME_SIZE HTTP/2 setting. Indicates the size of the largest frame payload that the sender is willing to receive, in octets. The initial value is 2^14 (16,384) octets.
    • maxHeaderListSize

      OptionalLong maxHeaderListSize()
      Set the SETTINGS_MAX_HEADER_LIST_SIZE HTTP/2 setting. This advisory setting informs a peer of the maximum size of header list that the sender is prepared to accept, in octets. The value is based on the uncompressed size of header fields, including the length of the name and value in octets plus an overhead of 32 octets for each header field. The default value is 8192
    • rstFloodMaxRstFramePerWindow

      OptionalInt rstFloodMaxRstFramePerWindow()
      Set the max number of RST frame allowed per time window, this is used to prevent HTTP/2 RST frame flood DDOS attacks. The default value is 200, setting zero or a negative value, disables flood protection.
    • rstFloodWindowDuration

      Optional<Duration> rstFloodWindowDuration()
      Set the duration of the time window when checking the max number of RST frames, this is used to prevent HTTP/2 RST frame flood DDOS attacks.. The default value is 30 s, setting zero or a negative value, disables flood protection.