The default route store: definitions in this node's memory, with a hard cap and a config seed.
config.routes.seed loads at boot, which is what makes a standalone (no
Redis) deployment survivable across restarts: a route an operator added
through the API is gone on restart, but the seed is not. The process owns
the instance's snapshot table (Ankusa.Routes.Snapshot), and every mutation
writes the rows it changes there, so the guard sees the change on the very
next request — no TTL wait, no polling.
Seeding happens only at boot, into an empty store — on every instance
boot: a seed route deleted through the API returns at the next restart
unless it is also removed from config.routes.seed. (Only the Redis store
seeds once per namespace.) A store process that crashes and is restarted
inside a running instance does not seed again: it resumes from the snapshot
table it left, API-created routes included.
The process registers under Ankusa.via(instance, :routes_store); there is
no global name, so two instances in one VM never collide.
Summary
Functions
Returns a specification to start this module under a supervisor.
Functions
Returns a specification to start this module under a supervisor.
See Supervisor.