82 lines
4.8 KiB
TOML
82 lines
4.8 KiB
TOML
# futriix config.toml
|
||
# Конфигурация Futriix Server с wait-free архитектурой
|
||
|
||
[server]
|
||
host = "127.0.0.1" # Хост для привязки сервера
|
||
http_port = 9090 # Порт HTTP сервера
|
||
https_port = 8443 # Порт HTTPS сервера
|
||
max_connections = 10000 # Максимальное количество одновременных подключений
|
||
connection_timeout = 30 # Таймаут соединения в секундах
|
||
http2_enabled = true # Включение поддержки HTTP/2
|
||
http = true # Новая директива: включение HTTP сервера
|
||
https = false # Новая директива: включение HTTPS сервера
|
||
|
||
[tls]
|
||
enabled = false # Включение TLS/SSL
|
||
cert_path = "/futriix/certs/server.crt" # Путь к сертификату сервера
|
||
key_path = "/futriix/certs/server.key" # Путь к приватному ключу
|
||
|
||
[replication]
|
||
enabled = true # Включение репликации
|
||
master_nodes = [
|
||
"node1.futriix:9090", # Основные узлы репликации
|
||
"node2.futriix:9090",
|
||
"node3.futriix:9090"
|
||
]
|
||
sync_interval = 1000 # Интервал синхронизации в миллисекундах
|
||
replication_factor = 3 # Фактор репликации (сколько копий данных)
|
||
|
||
[sharding]
|
||
enabled = true # Включение шардинга
|
||
shards = 3 # Количество шардов
|
||
replication_factor = 2 # Фактор репликации для шардинга
|
||
auto_balance = true # Автоматическая балансировка нагрузки
|
||
|
||
[cluster] # Новая секция для кластера
|
||
enabled = true # Включение кластерного режима
|
||
name = "futriix-main-cluster" # Имя кластера
|
||
|
||
[acl]
|
||
enabled = false # Включение контроля доступа (ACL)
|
||
allowed_ips = ["127.0.0.1", "192.168.1.0/24"] # Разрешенные IP-адреса
|
||
denied_ips = ["10.0.0.5"] # Запрещенные IP-адреса
|
||
|
||
[logging]
|
||
level = "info" # Уровень логирования (debug, info, warn, error)
|
||
file_path = "/futriix/logs/futriix.log" # Путь к файлу лога
|
||
max_file_size = 10485760 # Максимальный размер файла лога (10MB)
|
||
backup_count = 5 # Количество резервных копий логов
|
||
|
||
[backup]
|
||
enabled = true # Включение автоматического бэкапа
|
||
interval = 3600 # Интервал бэкапа в секундах (1 час)
|
||
retention = 7 # Время хранения бэкапов в днях
|
||
path = "/futriix/backups" # Директория для хранения бэкапов
|
||
|
||
[csv] # Новая секция для CSV
|
||
import_dir = "/futriix/csv/import" # Директория для импорта CSV файлов
|
||
export_dir = "/futriix/csv/export" # Директория для экспорта CSV файлов
|
||
max_file_size = 104857600 # Максимальный размер CSV файла (100MB)
|
||
|
||
[security]
|
||
require_authentication = false # Требовать аутентификацию
|
||
jwt_secret = "your-secret-key-here" # Секретный ключ для JWT токенов
|
||
password_hashing_rounds = 12 # Количество раундов хэширования паролей
|
||
|
||
[performance]
|
||
max_memory_mb = 1024 # Максимальное использование памяти в MB
|
||
cache_size_mb = 512 # Размер кэша в MB
|
||
worker_threads = 4 # Количество рабочих потоков
|
||
io_threads = 2 # Количество потоков ввода/вывода
|
||
|
||
[monitoring]
|
||
enabled = false # Включение мониторинга
|
||
prometheus_port = 9090 # Порт для метрик Prometheus
|
||
health_check_interval = 30 # Интервал проверки здоровья в секундах
|
||
|
||
[limits]
|
||
max_documents_per_collection = 1000000 # Максимальное количество документов в коллекции
|
||
max_collections = 1000 # Максимальное количество коллекций
|
||
max_indexes_per_collection = 16 # Максимальное количество индексов на коллекцию
|
||
request_timeout_ms = 5000 # Таймаут запроса в миллисекундах
|
||
max_request_size_mb = 10 # Максимальный размер запроса в MB |