Clients
GatewayD supports multiple client configurations. Each client within a configuration group will connect to a database server specified in the configuration parameters and will be added to its corresponding pool based on their configuration group (e.g., default
) and configuration block (e.g., writes
).
Configuration parameters
Name | Type | Default value | Possible values | Description |
---|---|---|---|---|
network | string | tcp | tcp, udp, unix | The network protocol to use |
address | string | localhost:5432 | Possible host:port | Database server address. PostgreSQL for now. |
tcpKeepAlive | boolean | False | True, False | Whether to enable TCP keep-alive or not |
tcpKeepAlivePeriod | duration (string) | 30s | Valid duration strings | Interval between each keep-alive packet |
receiveChunkSize | number | 8192 | Positive integers | The amount of bytes to read per each call to receive (bytes) |
receiveDeadline | duration (string) | 0s | Valid duration strings | The amount of time the client should wait before giving up on call to receive. 0s disables receive deadline. This k |
receiveTimeout | duration (string) | 0s | Valid duration strings | The amount of time the client should wait before giving up on call to receive. 0s disables receive timeout. |
sendDeadline | duration (string) | 0s | Valid duration strings | The amount of time the client should wait before giving up on call to send. 0s disables send deadline. |
dialTimeout | duration (string) | 60s | Valid duration strings | The amount of time the client should wait before giving up on dialing the database. 0s disables dial timeout. |
retries | number | 3 | Positive integers | The amount of times to retry a failed connection. 0 means no retry. |
backoff | duration (string) | 1s | Valid duration strings | The amount of time to wait before retrying a failed connection. 0s means no backoff. |
backoffMultiplier | number | 2.0 | Positive integers | The multiplier to apply to the backoff duration. 0 means no backoff. |
disableBackoffCaps | boolean | False | True, False | Whether to disable the backoff caps for backoff multiplier and backoff duration. |
clients:
default:
writes:
network: tcp
address: localhost:5432
tcpKeepAlive: False
tcpKeepAlivePeriod: 30s # duration
receiveChunkSize: 8192
receiveDeadline: 0s # duration, 0ms/0s means no deadline
receiveTimeout: 0s # duration, 0ms/0s means no timeout
sendDeadline: 0s # duration, 0ms/0s means no deadline
dialTimeout: 60s # duration, 0ms/0s means no timeout
# Retry configuration
retries: 3 # 0 means no retry
backoff: 1s # duration
backoffMultiplier: 2.0 # 0 means no backoff
disableBackoffCaps: false