Files
kjvstudy.org/fly.toml
T
kennethreitz 5a223a90d4 Keep one machine running to eliminate cold starts
Changed Fly.io configuration to maintain one active machine:
- min_machines_running: 0 → 1
- auto_stop_machines: 'stop' → 'suspend'

This eliminates cold start delays by keeping the application warm and ready
to serve requests immediately. The machine will suspend (not stop) when idle,
allowing much faster wake-up times.

With PRELOAD_INTERLINEAR enabled, the 14MB interlinear data stays loaded
in memory, making all requests fast without repeated decompression.

Trade-off: Slightly higher costs for always-on machine, but much better
user experience with instant page loads.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 00:32:25 -05:00

44 lines
840 B
TOML

# fly.toml app configuration file generated for kjvstudy on 2025-05-26T12:55:54-04:00
#
# See https://fly.io/docs/reference/configuration/ for information about how to use this file.
#
app = 'kjvstudy'
primary_region = 'iad'
[build]
[http_service]
internal_port = 8000
force_https = true
auto_stop_machines = 'suspend'
auto_start_machines = true
min_machines_running = 1
processes = ['app']
[http_service.concurrency]
type = "requests"
hard_limit = 250
soft_limit = 200
# Health check endpoint
[[http_service.checks]]
interval = "15s"
timeout = "10s"
grace_period = "30s"
method = "GET"
path = "/health"
[[vm]]
memory = '2gb'
cpu_kind = 'shared'
cpus = 2
[env]
# Production optimizations
PYTHONUNBUFFERED = "1"
PYTHONDONTWRITEBYTECODE = "1"
# Preload interlinear data on startup for fast first requests
PRELOAD_INTERLINEAR = "true"