Agent Configuration
Configure StreamHouse agents for your workload.
5 min readAgents
On this page
Overview
StreamHouse agents are stateless compute nodes that handle all client requests. Because they hold no persistent state, agents can be started, stopped, and scaled freely. Configuration is provided via environment variables or a TOML config file.
Configuration File
The agent configuration file controls server behavior, connection settings, and performance tuning parameters.
toml
# streamhouse.toml
[server]
host = "0.0.0.0"
http_port = 8080
grpc_port = 9092
worker_threads = 8
[metadata]
backend = "postgres"
url = "postgresql://user:pass@db:5432/streamhouse"
pool_size = 20
cache_ttl_secs = 300
[storage]
backend = "s3"
bucket = "streamhouse-data"
region = "us-east-1"
endpoint = "" # Leave empty for AWS, set for MinIO
[writer]
segment_target_bytes = 67108864 # 64MB
flush_interval_secs = 10
max_concurrent_uploads = 4
[cache]
segment_cache_size_mb = 512
metadata_cache_size = 10000Environment Variables
All configuration options can be set via environment variables. Environment variables take precedence over the config file.
- STREAMHOUSE_HOST: Bind address (default: 0.0.0.0)
- STREAMHOUSE_HTTP_PORT: HTTP API port (default: 8080)
- STREAMHOUSE_GRPC_PORT: gRPC port (default: 9092)
- METADATA_URL: PostgreSQL connection string
- S3_BUCKET: S3 bucket for data storage
- S3_REGION: AWS region (default: us-east-1)
- S3_ENDPOINT: Custom S3 endpoint (for MinIO)