Pure planning over the active map ({profile-id Active}): which services a profile can release without starving another active profile, what a switch releases, and what the reaper reaps. Plans are vectors of Release steps.
Pure planning over the active map ({profile-id Active}): which services a
profile can release without starving another active profile, what a switch
releases, and what the reaper reaps. Plans are vectors of Release steps.(down-release active id project services action)The Release step for taking profile id down with action (:stop or :down).
An active profile releases what it alone needs; an inactive one releases
services minus what active profiles need.
The Release step for taking profile `id` down with `action` (:stop or :down). An active profile releases what it alone needs; an inactive one releases `services` minus what active profiles need.
(footprint a)What active entry a keeps alive: the services it runs and the depends_on
closure they need (:needs), which may hold services another entry started.
What active entry `a` keeps alive: the services it runs and the depends_on closure they need (`:needs`), which may hold services another entry started.
(idle? now-ms last-touch ttl-ms)True when ttl-ms has elapsed since last-touch.
True when `ttl-ms` has elapsed since `last-touch`.
(needed-by-others active project id)Services of project that active profiles other than id need.
Services of `project` that active profiles other than `id` need.
(reap-releases settings now-ms active)Release steps for every idle profile, applied in id order against a shrinking active map, so a service two idle profiles share is released by the last one. Profiles whose idle action is :none are never reaped.
Release steps for every idle profile, applied in id order against a shrinking active map, so a service two idle profiles share is released by the last one. Profiles whose idle action is :none are never reaped.
(release-services active id)Sorted services of active profile id's footprint that no other active
profile of its project needs.
Sorted services of active profile `id`'s footprint that no other active profile of its project needs.
(switch-releases active current next-id next-project next-services)Release steps for moving from current to next-id, which needs
next-services in next-project. What the next profile shares stays up.
Release steps for moving from `current` to `next-id`, which needs `next-services` in `next-project`. What the next profile shares stays up.
cljdoc builds & hosts documentation for Clojure/Script libraries
| Ctrl+k | Jump to recent docs |
| ← | Move to previous article |
| → | Move to next article |
| Ctrl+/ | Jump to the search field |