Skip to main content
编辑本页

AddressResolverOptions

Configuration options for Vert.x hostname resolver. The resolver uses the local hosts file and performs DNS A and AAAA queries.

Name

Type

Description

@cacheMaxTimeToLive

Number (int)

Set the cache maximum TTL value in seconds. After successful resolution IP addresses are cached with their DNS response TTL, use this to set a maximum value to all responses TTL.

@cacheMinTimeToLive

Number (int)

Set the cache minimum TTL value in seconds. After resolution successful IP addresses are cached with their DNS response TTL, use this to set a minimum value to all responses TTL.

@cacheNegativeTimeToLive

Number (int)

Set the negative cache TTL value in seconds. After a failed hostname resolution, DNS queries won't be retried for a period of time equals to the negative TTL. This allows to reduce the response time of negative replies and reduce the amount of messages to DNS servers.

@hostsPath

String

Set the path of an alternate hosts configuration file to use instead of the one provided by the os.

The default value is null, so the operating system hosts config is used.

@hostsValue

Buffer

Set an alternate hosts configuration file to use instead of the one provided by the os.

The value should contain the hosts content literaly, for instance 127.0.0.1 localhost

The default value is null, so the operating system hosts config is used.

@maxQueries

Number (int)

Set the maximum number of queries when an hostname is resolved.

@ndots

Number (int)

Set the ndots value used when resolving using search domains, the default value is -1 which determines the value from the OS on Linux or uses the value 1.

@optResourceEnabled

Boolean

Set to true to enable the automatic inclusion in DNS queries of an optional record that hints the remote DNS server about how much data the resolver can read per response.

@queryTimeout

Number (long)

Set the query timeout in milliseconds, i.e the amount of time after a query is considered to be failed.

@rdFlag

Boolean

Set the DNS queries Recursion Desired flag value.

@rotateServers

Boolean

Set to true to enable round-robin selection of the dns server to use. It spreads the query load among the servers and avoids all lookup to hit the first server of the list.

@searchDomains

Array of String

Set the lists of DNS search domains.

When the search domain list is null, the effective search domain list will be populated using the system DNS search domains.

@servers

Array of String

Set the list of DNS server addresses, an address is the IP of the dns server, followed by an optional colon and a port, e.g 8.8.8.8 or {code 192.168.0.1:40000}. When the list is empty, the resolver will use the list of the system DNS server addresses from the environment, if that list cannot be retrieved it will use Google's public DNS servers "8.8.8.8" and "8.8.4.4".

Argument

Defines a command line argument. Unlike options, argument don't have names and are identified using an index. The first index is 0 (because we are in the computer world).

Name

Type

Description

@argName

String

Sets the argument name of this link.

@defaultValue

String

Sets the default value of this link.

@description

String

Sets the description of the link.

@hidden

Boolean

Sets whether or not the current link is hidden.

@index

Number (int)

Sets the argument index.

@multiValued

Boolean

Sets whether or not the argument can receive several values. Only the last argument can receive several values.

@required

Boolean

Sets whether or not the current link is required.

ClientOptionsBase

Base class for Client options

Name

Type

Description

@connectTimeout

Number (int)

Set the connect timeout

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@localAddress

String

Set the local interface to bind for network connections. When the local address is null, it will pick any local address, the default local address is null.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@metricsName

String

Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@proxyOptions

ProxyOptions

Set proxy options for connections via CONNECT proxy (e.g. Squid) or a SOCKS proxy.

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustAll

Boolean

Set whether all server certificates should be trusted

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

CopyOptions

Describes the copy (and move) options.

Name

Type

Description

@atomicMove

Boolean

Whether move should be performed as an atomic filesystem operation. Defaults to false.

@copyAttributes

Boolean

Whether the file attributes should be copied. Defaults to false.

@nofollowLinks

Boolean

Whether symbolic links should not be followed during copy or move operations. Defaults to false.

@replaceExisting

Boolean

Whether an existing file, empty directory, or link should be replaced. Defaults to false.

DatagramSocketOptions

Options used to configure a datagram socket.

Name

Type

Description

@broadcast

Boolean

Set if the socket can send or receive broadcast packets

@ipV6

Boolean

Set if IP v6 should be used

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@loopbackModeDisabled

Boolean

Set if loopback mode is disabled

@multicastNetworkInterface

String

Set the multicast network interface address

@multicastTimeToLive

Number (int)

Set the multicast ttl value

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@trafficClass

Number (int)

Set the value of traffic class

DeliveryOptions

Delivery options are used to configure message delivery.

Delivery options allow to configure delivery timeout and message codec name, and to provide any headers that you wish to send with the message.


Name

Type

Description

@codecName

String

Set the codec name.

@headers

String

Add a message header.

Message headers can be sent with any message and will be accessible with link at the recipient.

@localOnly

Boolean

Whether a message should be delivered to local consumers only. Defaults to false.

This option is effective in clustered mode only and does not apply to reply messages.

@sendTimeout

Number (long)

Set the send timeout.

DeploymentOptions

Options for configuring a verticle deployment.


Name

Type

Description

@config

Json object

Set the JSON configuration that will be passed to the verticle(s) when it's deployed

@extraClasspath

Array of String

Set any extra classpath to be used when deploying the verticle.

Ignored if no isolation group is set.

@ha

Boolean

Set whether the verticle(s) will be deployed as HA.

@instances

Number (int)

Set the number of instances that should be deployed.

@isolatedClasses

Array of String

Set the isolated class names.

@isolationGroup

String

Set the isolation group that will be used when deploying the verticle(s)

@maxWorkerExecuteTime

Number (long)

Sets the value of max worker execute time, in link.

The default value of link is

@maxWorkerExecuteTimeUnit

TimeUnit

Set the time unit of maxWorkerExecuteTime

@multiThreaded

Boolean

Set whether the verticle(s) should be deployed as a multi-threaded worker verticle.

WARNING: Multi-threaded worker verticles are a deprecated feature.

Most applications will have no need for them. Because of the concurrency in these verticles you have to be very careful to keep the verticle in a consistent state using standard Java techniques for multi-threaded programming.

You can read the documentation that explains how you can replace this feature by the usage of custom worker pools or executeBlocking calls.

@worker

Boolean

Set whether the verticle(s) should be deployed as a worker verticle

@workerPoolName

String

Set the worker pool name to use for this verticle. When no name is set, the Vert.x worker pool will be used, when a name is set, the verticle will use a named worker pool.

@workerPoolSize

Number (int)

Set the maximum number of worker threads to be used by the Vert.x instance.

DnsClientOptions

Configuration options for Vert.x DNS client.

Name

Type

Description

@host

String

Set the host name to be used by this client in requests.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@port

Number (int)

Set the port to be used by this client in requests.

@queryTimeout

Number (long)

Set the query timeout in milliseconds, i.e the amount of time after a query is considered to be failed.

@recursionDesired

Boolean

Set whether or not recursion is desired

EventBusOptions

Options to configure the event bus.

Name

Type

Description

@acceptBacklog

Number (int)

Set the accept back log.

@clientAuth

ClientAuth

Set whether client auth is required

@clusterPingInterval

Number (long)

Set the value of cluster ping interval, in ms.

@clusterPingReplyInterval

Number (long)

Set the value of cluster ping reply interval, in ms.

@clusterPublicHost

String

Set the public facing hostname to be used for clustering. Sometimes, e.g. when running on certain clouds, the local address the server listens on for clustering is not the same address that other nodes connect to it at, as the OS / cloud infrastructure does some kind of proxying. If this is the case you can specify a public hostname which is different from the hostname the server listens at.

The default value is null which means use the same as the cluster hostname.

@clusterPublicPort

Number (int)

See link for an explanation.

@clustered

Boolean

Sets whether or not the event bus is clustered.

@connectTimeout

Number (int)

Sets the connect timeout

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@host

String

Sets the host.

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@port

Number (int)

Sets the port.

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reconnectAttempts

Number (int)

Sets the value of reconnect attempts.

@reconnectInterval

Number (long)

Set the reconnect interval.

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustAll

Boolean

Set whether all server certificates should be trusted.

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

FileSystemOptions

Vert.x file system base configuration, this class can be extended by provider implementations to configure those specific implementations.

Name

Type

Description

@classPathResolvingEnabled

Boolean

When vert.x cannot find the file on the filesystem it tries to resolve the file from the class path when this is set to true.

@fileCachingEnabled

Boolean

Set to true to cache files on the real file system when the filesystem performs class path resolving.

GoAway

A frame.

Name

Type

Description

@debugData

Buffer

Set the additional debug data

@errorCode

Number (long)

@lastStreamId

Number (int)

Set the last stream id.

Http2Settings

HTTP2 settings, the settings is initialized with the default HTTP/2 values.

The settings expose the parameters defined by the HTTP/2 specification, as well as extra settings for protocol extensions.


Name

Type

Description

@headerTableSize

Number (long)

Set HTTP/2 setting.

@initialWindowSize

Number (int)

Set the HTTP/2 setting

@maxConcurrentStreams

Number (long)

Set the HTTP/2 setting

@maxFrameSize

Number (int)

Set the HTTP/2 setting

@maxHeaderListSize

Number (long)

Set the HTTP/2 setting

@pushEnabled

Boolean

Set the HTTP/2 setting

HttpClientOptions

Options describing how an link will make connections.

Name

Type

Description

@alpnVersions

Array of HttpVersion

Set the list of protocol versions to provide to the server during the Application-Layer Protocol Negotiation. When the list is empty, the client provides a best effort list according to link:

  • : [ "h2", "http/1.1" ]
  • otherwise: [link]

@connectTimeout

Number (int)

Set the connect timeout

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@decoderInitialBufferSize

Number (int)

set to initialBufferSizeHttpDecoder the initial buffer of the HttpDecoder.

@defaultHost

String

Set the default host name to be used by this client in requests if none is provided when making the request.

@defaultPort

Number (int)

Set the default port to be used by this client in requests if none is provided when making the request.

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@forceSni

Boolean

By default, the server name is only sent for Fully Qualified Domain Name (FQDN), setting this property to true forces the server name to be always sent.

@http2ClearTextUpgrade

Boolean

Set to true when an h2c connection is established using an HTTP/1.1 upgrade request, and false when an h2c connection is established directly (with prior knowledge).

@http2ConnectionWindowSize

Number (int)

Set the default HTTP/2 connection window size. It overrides the initial window size set by link, so the connection window size is greater than for its streams, in order the data throughput.

A value of -1 reuses the initial window size setting.

@http2KeepAliveTimeout

Number (int)

Set the keep alive timeout for HTTP/2 connections, in seconds.

This value determines how long a connection remains unused in the pool before being evicted and closed.

@http2MaxPoolSize

Number (int)

Set the maximum pool size for HTTP/2 connections

@http2MultiplexingLimit

Number (int)

Set a client limit of the number concurrent streams for each HTTP/2 connection, this limits the number of streams the client can create for a connection. The effective number of streams for a connection is the min of this value and the server's initial settings.

Setting the value to -1 means to use the value sent by the server's initial settings. -1 is the default value.

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@initialSettings

Http2Settings

Set the HTTP/2 connection settings immediately sent by to the server when the client connects.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keepAlive

Boolean

Set whether keep alive is enabled on the client

@keepAliveTimeout

Number (int)

Set the keep alive timeout for HTTP/1.x, in seconds.

This value determines how long a connection remains unused in the pool before being evicted and closed.

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@localAddress

String

Set the local interface to bind for network connections. When the local address is null, it will pick any local address, the default local address is null.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@maxChunkSize

Number (int)

Set the maximum HTTP chunk size

@maxHeaderSize

Number (int)

Set the maximum length of all headers for HTTP/1.x .

@maxInitialLineLength

Number (int)

Set the maximum length of the initial line for HTTP/1.x (e.g. "HTTP/1.1 200 OK")

@maxPoolSize

Number (int)

Set the maximum pool size for connections

@maxRedirects

Number (int)

Set to maxRedirects the maximum number of redirection a request can follow.

@maxWaitQueueSize

Number (int)

Set the maximum requests allowed in the wait queue, any requests beyond the max size will result in a ConnectionPoolTooBusyException. If the value is set to a negative number then the queue will be unbounded.

@maxWebsocketFrameSize

Number (int)

Set the max websocket frame size

@maxWebsocketMessageSize

Number (int)

Set the max websocket message size

@metricsName

String

Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@pipelining

Boolean

Set whether pipe-lining is enabled on the client

@pipeliningLimit

Number (int)

Set the limit of pending requests a pipe-lined HTTP/1 connection can send.

@poolCleanerPeriod

Number (int)

Set the connection pool cleaner period in milli seconds, a non positive value disables expiration checks and connections will remain in the pool until they are closed.

@protocolVersion

HttpVersion

Set the protocol version.

@proxyOptions

ProxyOptions

Set proxy options for connections via CONNECT proxy (e.g. Squid) or a SOCKS proxy.

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@sendUnmaskedFrames

Boolean

Set true when the client wants to skip frame masking. You may want to set it true on server by server websocket communication: In this case you are by passing RFC6455 protocol. It's false as default.

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustAll

Boolean

Set whether all server certificates should be trusted

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@tryUseCompression

Boolean

Set whether compression is enabled

@tryUsePerFrameWebsocketCompression

Boolean

Set option to offer per frame WebSocket compression.

@tryUsePerMessageWebsocketCompression

Boolean

Set option to offer per message WebSocket compression.

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

@verifyHost

Boolean

Set whether hostname verification is enabled

@websocketCompressionAllowClientNoContext

Boolean

Set the WebSocket compression allow client no context option.

@websocketCompressionLevel

Number (int)

Set WebSocket compression level

@websocketCompressionRequestServerNoContext

Boolean

Set the WebSocket compression server no context option

HttpServerOptions

Represents options used by an link instance

Name

Type

Description

@acceptBacklog

Number (int)

Set the accept back log

@acceptUnmaskedFrames

Boolean

Set true when the server accepts unmasked frame. As default Server doesn't accept unmasked frame, you can bypass this behaviour (RFC 6455) setting true It's set to false as default.

@alpnVersions

Array of HttpVersion

Set the list of protocol versions to provide to the server during the Application-Layer Protocol Negotiatiation.

@clientAuth

ClientAuth

Set whether client auth is required

@clientAuthRequired

Boolean

Set whether client auth is required

@compressionLevel

Number (int)

This method allows to set the compression level to be used in http1.x/2 response bodies when compression support is turned on (@see setCompressionSupported) and the client advertises to support deflate/gzip compression in the Accept-Encoding header

default value is : 6 (Netty legacy)

The compression level determines how much the data is compressed on a scale from 1 to 9, where '9' is trying to achieve the maximum compression ratio while '1' instead is giving priority to speed instead of compression ratio using some algorithm optimizations and skipping pedantic loops that usually gives just little improvements

While one can think that best value is always the maximum compression ratio, there's a trade-off to consider: the most compressed level requires the most computational work to compress/decompress data, e.g. more dictionary lookups and loops.

E.g. you have it set fairly high on a high-volume website, you may experience performance degradation and latency on resource serving due to CPU overload, and, however - as the computational work is required also client side while decompressing - setting an higher compression level can result in an overall higher page load time especially nowadays when many clients are handled mobile devices with a low CPU profile.

see also: http://www.gzip.org/algorithm.txt

@compressionSupported

Boolean

Set whether the server should support gzip/deflate compression (serving compressed responses to clients advertising support for them with Accept-Encoding header)

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@decoderInitialBufferSize

Number (int)

Set the initial buffer size for the HTTP decoder

@decompressionSupported

Boolean

Set whether the server supports decompression

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@handle100ContinueAutomatically

Boolean

Set whether 100 Continue should be handled automatically

@host

String

Set the host

@http2ConnectionWindowSize

Number (int)

Set the default HTTP/2 connection window size. It overrides the initial window size set by link, so the connection window size is greater than for its streams, in order the data throughput.

A value of -1 reuses the initial window size setting.

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@initialSettings

Http2Settings

Set the HTTP/2 connection settings immediatly sent by the server when a client connects.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@maxChunkSize

Number (int)

Set the maximum HTTP chunk size that link will receive

@maxHeaderSize

Number (int)

Set the maximum length of all headers for HTTP/1.x .

@maxInitialLineLength

Number (int)

Set the maximum length of the initial line for HTTP/1.x (e.g. "GET / HTTP/1.0")

@maxWebsocketFrameSize

Number (int)

Set the maximum websocket frames size

@maxWebsocketMessageSize

Number (int)

Set the maximum websocket message size

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@perFrameWebsocketCompressionSupported

Boolean

Enable or disable support for WebSocket Defalte Frame compression

@perMessageWebsocketCompressionSupported

Boolean

Enable or disable support for WebSocket Permessage Deflate compression

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@port

Number (int)

Set the port

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@sni

Boolean

Set whether the server supports Server Name Indiciation

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

@websocketAllowServerNoContext

Boolean

Set the WebSocket Allow Server No Context option

@websocketCompressionLevel

Number (int)

Set the WebSocket compression level

@websocketPreferredClientNoContext

Boolean

Set the WebSocket Preferred Client No Context setting

@websocketSubProtocols

String

Set the websocket subprotocols supported by the server.

JdkSSLEngineOptions

Configures a link to use the JDK ssl engine implementation.

Name

Type

Description

JksOptions

Key or trust store options configuring private key and/or certificates based on Java Keystore files.

When used as a key store, it should point to a store containing a private key and its certificate. When used as a trust store, it should point to a store containing a list of trusted certificates.

The store can either be loaded by Vert.x from the filesystem:

HttpServerOptions options = HttpServerOptions.httpServerOptions();
options.setKeyStore(new JKSOptions().setPath("/mykeystore.jks").setPassword("foo"));
Or directly provided as a buffer:

Buffer store = vertx.fileSystem().readFileSync("/mykeystore.jks");
options.setKeyStore(new JKSOptions().setValue(store).setPassword("foo"));

Name

Type

Description

@password

String

Set the password for the key store

@path

String

Set the path to the key store

@value

Buffer

Set the key store as a buffer

MetricsOptions

Vert.x metrics base configuration, this class can be extended by provider implementations to configure those specific implementations.

Name

Type

Description

@enabled

Boolean

Set whether metrics will be enabled on the Vert.x instance.

NetClientOptions

Options for configuring a link.

Name

Type

Description

@connectTimeout

Number (int)

Set the connect timeout

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@hostnameVerificationAlgorithm

String

Set the hostname verification algorithm interval To disable hostname verification, set hostnameVerificationAlgorithm to an empty String

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@localAddress

String

Set the local interface to bind for network connections. When the local address is null, it will pick any local address, the default local address is null.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@metricsName

String

Set the metrics name identifying the reported metrics, useful for grouping metrics with the same name.

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@proxyOptions

ProxyOptions

Set proxy options for connections via CONNECT proxy (e.g. Squid) or a SOCKS proxy.

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reconnectAttempts

Number (int)

Set the value of reconnect attempts

@reconnectInterval

Number (long)

Set the reconnect interval

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustAll

Boolean

Set whether all server certificates should be trusted

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

NetServerOptions

Options for configuring a link.

Name

Type

Description

@acceptBacklog

Number (int)

Set the accept back log

@clientAuth

ClientAuth

Set whether client auth is required

@clientAuthRequired

Boolean

Set whether client auth is required

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@host

String

Set the host

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@port

Number (int)

Set the port

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@sni

Boolean

Set whether the server supports Server Name Indiciation

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

NetworkOptions


Name

Type

Description

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@trafficClass

Number (int)

Set the value of traffic class

OpenOptions

Describes how an link should be opened.

Name

Type

Description

@append

Boolean

Whether the file should be opened in append mode. Defaults to false.

@create

Boolean

Set whether the file should be created if it does not already exist.

@createNew

Boolean

Set whether the file should be created and fail if it does exist already.

@deleteOnClose

Boolean

Set whether the file should be deleted when it's closed, or the JVM is shutdown.

@dsync

Boolean

Set whether every write to the file's content ill be written synchronously to the underlying hardware.

@perms

String

Set the permissions string

@read

Boolean

Set whether the file is to be opened for reading

@sparse

Boolean

Set whether a hint should be provided that the file to created is sparse

@sync

Boolean

Set whether every write to the file's content and meta-data will be written synchronously to the underlying hardware.

@truncateExisting

Boolean

Set whether the file should be truncated to zero length on opening if it exists and is opened for write

@write

Boolean

Set whether the file is to be opened for writing

OpenSSLEngineOptions

Configures a link to use OpenSsl.

Name

Type

Description

@sessionCacheEnabled

Boolean

Set whether session cache is enabled in open SSL session server context

Option

Models command line options. Options are values passed to a command line interface using -x or --x. Supported syntaxes depend on the parser.

Short name is generally used with a single dash, while long name requires a double-dash.


Name

Type

Description

@argName

String

Sets te arg name for this option.

@choices

Array of String

Sets the list of values accepted by this option. If the value set by the user does not match once of these values, a link exception is thrown.

@defaultValue

String

Sets the default value of this option

@description

String

Sets te description of this option.

@flag

Boolean

Configures the current link to be a flag. It will be evaluated to true if it's found in the command line. If you need a flag that may receive a value, use, in this order:

  option.setFlag(true).setSingleValued(true)

@help

Boolean

Sets whether or not this option is a "help" option

@hidden

Boolean

Sets whether or not this option should be hidden

@longName

String

Sets the long name of this option.

@multiValued

Boolean

Sets whether or not this option can receive several values.

@name

String

@required

Boolean

Sets whether or not this option is mandatory.

@shortName

String

Sets the short name of this option.

@singleValued

Boolean

Sets whether or not this option can receive a value.

PemKeyCertOptions

Key store options configuring a list of private key and its certificate based on Privacy-enhanced Electronic Email (PEM) files.

A key file must contain a non encrypted private key in PKCS8 format wrapped in a PEM block, for example:

-----BEGIN PRIVATE KEY-----
MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDV6zPk5WqLwS0a
...
K5xBhtm1AhdnZjx5KfW3BecE
-----END PRIVATE KEY-----

Or contain a non encrypted private key in PKCS1 format wrapped in a PEM block, for example:

-----BEGIN RSA PRIVATE KEY-----
MIIEowIBAAKCAQEAlO4gbHeFb/fmbUF/tOJfNPJumJUEqgzAzx8MBXv9Acyw9IRa
...
zJ14Yd+t2fsLYVs2H0gxaA4DW6neCzgY3eKpSU0EBHUCFSXp/1+/
-----END RSA PRIVATE KEY-----

A certificate file must contain an X.509 certificate wrapped in a PEM block, for example:

-----BEGIN CERTIFICATE-----
MIIDezCCAmOgAwIBAgIEZOI/3TANBgkqhkiG9w0BAQsFADBuMRAwDgYDVQQGEwdV
...
+tmLSvYS39O2nqIzzAUfztkYnUlZmB0l/mKkVqbGJA==
-----END CERTIFICATE-----
Keys and certificates can either be loaded by Vert.x from the filesystem:

HttpServerOptions options = new HttpServerOptions();
options.setPemKeyCertOptions(new PemKeyCertOptions().setKeyPath("/mykey.pem").setCertPath("/mycert.pem"));
Or directly provided as a buffer:

Buffer key = vertx.fileSystem().readFileSync("/mykey.pem");
Buffer cert = vertx.fileSystem().readFileSync("/mycert.pem");
options.setPemKeyCertOptions(new PemKeyCertOptions().setKeyValue(key).setCertValue(cert));
Several key/certificate pairs can be used:

HttpServerOptions options = new HttpServerOptions();
options.setPemKeyCertOptions(new PemKeyCertOptions()
   .addKeyPath("/mykey1.pem").addCertPath("/mycert1.pem")
   .addKeyPath("/mykey2.pem").addCertPath("/mycert2.pem"));

Name

Type

Description

@certPath

String

Set the path of the first certificate, replacing the previous certificates paths

@certPaths

Array of String

Set all the paths to the certificates files

@certValue

Buffer

Set the first certificate as a buffer, replacing the previous certificates buffers

@certValues

Array of Buffer

Set all the certificates as a list of buffer

@keyPath

String

Set the path of the first key file, replacing the keys paths

@keyPaths

Array of String

Set all the paths to the keys files

@keyValue

Buffer

Set the first key a a buffer, replacing the previous keys buffers

@keyValues

Array of Buffer

Set all the keys as a list of buffer

PemTrustOptions

Certificate Authority options configuring certificates based on Privacy-enhanced Electronic Email (PEM) files. The options is configured with a list of validating certificates.

Validating certificates must contain X.509 certificates wrapped in a PEM block:

-----BEGIN CERTIFICATE-----
MIIDezCCAmOgAwIBAgIEVmLkwTANBgkqhkiG9w0BAQsFADBuMRAwDgYDVQQGEwdV
...
z5+DuODBJUQst141Jmgq8bS543IU/5apcKQeGNxEyQ==
-----END CERTIFICATE-----
The certificates can either be loaded by Vert.x from the filesystem:

HttpServerOptions options = new HttpServerOptions();
options.setPemTrustOptions(new PemTrustOptions().addCertPath("/cert.pem"));
Or directly provided as a buffer:

Buffer cert = vertx.fileSystem().readFileSync("/cert.pem");
HttpServerOptions options = new HttpServerOptions();
options.setPemTrustOptions(new PemTrustOptions().addCertValue(cert));

Name

Type

Description

@certPaths

Array of String

Add a certificate path

@certValues

Array of Buffer

Add a certificate value

PfxOptions

Key or trust store options configuring private key and/or certificates based on PKCS#12 files.

When used as a key store, it should point to a store containing a private key and its certificate. When used as a trust store, it should point to a store containing a list of accepted certificates.

The store can either be loaded by Vert.x from the filesystem:

HttpServerOptions options = new HttpServerOptions();
options.setPfxKeyCertOptions(new PfxOptions().setPath("/mykeystore.p12").setPassword("foo"));
Or directly provided as a buffer:

Buffer store = vertx.fileSystem().readFileSync("/mykeystore.p12");
options.setPfxKeyCertOptions(new PfxOptions().setValue(store).setPassword("foo"));

Name

Type

Description

@password

String

Set the password

@path

String

Set the path

@value

Buffer

Set the store as a buffer

ProxyOptions

Proxy options for a net client or a net client.

Name

Type

Description

@host

String

Set proxy host.

@password

String

Set proxy password.

@port

Number (int)

Set proxy port.

@type

ProxyType

Set proxy type.

ProxyType can be HTTP, SOCKS4 and SOCKS5

@username

String

Set proxy username.

RequestOptions

Options describing how an link will make connect to make a request.

Name

Type

Description

@host

String

Set the host name to be used by the client request.

@port

Number (int)

Set the port to be used by the client request.

@ssl

Boolean

Set whether SSL/TLS is enabled

@uri

String

Set the request relative URI

StreamPriority

This class represents HTTP/2 stream priority defined in RFC 7540 clause 5.3

Name

Type

Description

@dependency

Number (int)

Set the priority dependency value.

@exclusive

Boolean

Set the priority exclusive value.

@weight

Number (short)

Set the priority weight.

TCPSSLOptions

Base class. TCP and SSL related options

Name

Type

Description

@crlPaths

Array of String

Add a CRL path

@crlValues

Array of Buffer

Add a CRL value

@enabledCipherSuites

Array of String

Add an enabled cipher suite, appended to the ordered suites.

@enabledSecureTransportProtocols

Array of String

Sets the list of enabled SSL/TLS protocols.

@idleTimeout

Number (int)

Set the idle timeout, default time unit is seconds. Zero means don't timeout. This determines if a connection will timeout and be closed if no data is received within the timeout.

If you want change default time unit, use link

@idleTimeoutUnit

TimeUnit

Set the idle timeout unit. If not specified, default is seconds.

@jdkSslEngineOptions

JdkSSLEngineOptions

-

@keyStoreOptions

JksOptions

Set the key/cert options in jks format, aka Java keystore.

@logActivity

Boolean

Set to true to enabled network activity logging: Netty's pipeline is configured for logging on Netty's logger.

@openSslEngineOptions

OpenSSLEngineOptions

-

@pemKeyCertOptions

PemKeyCertOptions

Set the key/cert store options in pem format.

@pemTrustOptions

PemTrustOptions

Set the trust options in pem format

@pfxKeyCertOptions

PfxOptions

Set the key/cert options in pfx format.

@pfxTrustOptions

PfxOptions

Set the trust options in pfx format

@receiveBufferSize

Number (int)

Set the TCP receive buffer size

@reuseAddress

Boolean

Set the value of reuse address

@reusePort

Boolean

Set the value of reuse port.

This is only supported by native transports.

@sendBufferSize

Number (int)

Set the TCP send buffer size

@soLinger

Number (int)

Set whether SO_linger keep alive is enabled

@ssl

Boolean

Set whether SSL/TLS is enabled

@tcpCork

Boolean

Enable the TCP_CORK option - only with linux native transport.

@tcpFastOpen

Boolean

Enable the TCP_FASTOPEN option - only with linux native transport.

@tcpKeepAlive

Boolean

Set whether TCP keep alive is enabled

@tcpNoDelay

Boolean

Set whether TCP no delay is enabled

@tcpQuickAck

Boolean

Enable the TCP_QUICKACK option - only with linux native transport.

@trafficClass

Number (int)

Set the value of traffic class

@trustStoreOptions

JksOptions

Set the trust options in jks format, aka Java truststore

@useAlpn

Boolean

Set the ALPN usage.

@usePooledBuffers

Boolean

Set whether Netty pooled buffers are enabled

VertxOptions

Instances of this class are used to configure link instances.

Name

Type

Description

@addressResolverOptions

AddressResolverOptions

Sets the address resolver configuration to configure resolving DNS servers, cache TTL, etc...

@blockedThreadCheckInterval

Number (long)

Sets the value of blocked thread check period, in link.

The default value of link is

@blockedThreadCheckIntervalUnit

TimeUnit

Set the time unit of blockedThreadCheckInterval.

@clusterHost

String

Set the hostname to be used for clustering.

@clusterPingInterval

Number (long)

Set the value of cluster ping interval, in ms.

@clusterPingReplyInterval

Number (long)

Set the value of cluster ping reply interval, in ms.

@clusterPort

Number (int)

Set the port to be used for clustering.

@clusterPublicHost

String

Set the public facing hostname to be used for clustering. Sometimes, e.g. when running on certain clouds, the local address the server listens on for clustering is not the same address that other nodes connect to it at, as the OS / cloud infrastructure does some kind of proxying. If this is the case you can specify a public hostname which is different from the hostname the server listens at. The default value is null which means use the same as the cluster hostname.

@clusterPublicPort

Number (int)

See link for an explanation.

@clustered

Boolean

Set whether or not the Vert.x instance will be clustered.

@eventBusOptions

EventBusOptions

Sets the event bus configuration to configure the host, port, ssl...

@eventLoopPoolSize

Number (int)

Set the number of event loop threads to be used by the Vert.x instance.

@fileResolverCachingEnabled

Boolean

Set whether the Vert.x file resolver uses caching for classpath resources.

Deprecated. Use FileSystemOptions instead.

@fileSystemOptions

FileSystemOptions

Set the file system options

@haEnabled

Boolean

Set whether HA will be enabled on the Vert.x instance.

@haGroup

String

Set the HA group to be used when HA is enabled.

@internalBlockingPoolSize

Number (int)

Set the value of internal blocking pool size

@maxEventLoopExecuteTime

Number (long)

Sets the value of max event loop execute time, in link.

The default value of linkis

@maxEventLoopExecuteTimeUnit

TimeUnit

Set the time unit of maxEventLoopExecuteTime.

@maxWorkerExecuteTime

Number (long)

Sets the value of max worker execute time, in link.

The default value of link is

@maxWorkerExecuteTimeUnit

TimeUnit

Set the time unit of maxWorkerExecuteTime.

@metricsOptions

MetricsOptions

Set the metrics options

@preferNativeTransport

Boolean

Set wether to prefer the native transport to the JDK transport.

@quorumSize

Number (int)

Set the quorum size to be used when HA is enabled.

@warningExceptionTime

Number (long)

Set the threshold value above this, the blocked warning contains a stack trace. in link. The default value of link is

@warningExceptionTimeUnit

TimeUnit

Set the time unit of warningExceptionTime.

@workerPoolSize

Number (int)

Set the maximum number of worker threads to be used by the Vert.x instance.