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