Skip to main content
Version: 2.11

jetstream

Hot Reloadable
Enabling or disabling JetStream reloads. Changing store_dir, domain, unique_tag or the encryption settings while JetStream is enabled fails the reload.

Types

TypeDescriptionChoices
boolean-true, false
stringIndicates the capability is enabled or disabled.enabled, enable, disabled, disable
objectAn object with a set of explicit properties that can be set.-

Properties

NameDescriptionTypeDefaultReloadable
enabledIf true, enables the JetStream subsystem.booleantrueYes*
store_dirDirectory to use for file-based storage.string/tmp/nats/jetstreamYes*
max_memory_storeMaximum size of the memory storage. Defaults to 75% of available memory.storage-No*
max_file_storeMaximum size of the file storage. Defaults to up to 1TB if available.storage-No*
domainThe JetStream domain the server is part of.string-No
encryption_keyIf defined, enables JetStream filestore encryption using the value as the encryption key. A key length of at least 32 bytes is recommended. Note, this key is HMAC-256 hashed on startup which reduces the byte length to 64.string-No
cipherDefines the encryption algorithm to use if an encryption key is defined.string-No
extension_hintstring-No
prev_encryption_keyPrevious encryption key, kept so existing filestore data can be read and re-encrypted after encryption_key changes.string-No
strictReject API requests containing unknown fields instead of ignoring them.booleantrueNo
max_buffered_msgsMessages the server buffers for a stream whose storage is temporarily unavailable, before it starts discarding.integer10000No
max_buffered_sizeByte ceiling for that same buffer.storage128MBNo
request_queue_limitQueued JetStream API requests allowed before new ones are rejected.integer10000No
tpmSeal the filestore encryption key in the machine's TPM, so it cannot be read off disk.object-No
limitsDefault cross-account JetStream limits.object-No
unique_tagDefines a tag prefix as a constraint for placement of assets across a JetStream domain. For example, if the value is az: then replicas of an assets will be required to be placed on servers having different az: tags.string-No
max_outstanding_catchupMax in-flight bytes for stream catch-up. This was introduced to control how much bandwidth should be dedicated during catch-up to guard against saturating and degrading performance of the network.storage32MNo
sync_intervalDefines the internal to force sync file-based stream and consumer data to disk. The filestore relies on the operating system's filesystem buffers to periodically sync to disk. However, the server will still periodically force sync files based on this interval. For use cases where unclean shutdowns are common, this can provide more control over how frequently to force sync data when written. If a value always is used, a explicit sync will occur on every write. Do note that this will degrade the max throughput due to the additional I/O calls.(multiple)2mNo

* See the property page for reload caveats.