---
myst:
html_meta:
description: "Choose among Melder's seven object lifetimes and follow examples of shared, scoped, and freshly constructed Python objects."
---
# Choose an instance lifetime
**Beginner.** Pick how long things live.
| | Existence | One instance per | Use it for |
|:--|:---|:---|:---|
| ๐ข | `unique` | Process (frame) | Config, pools, caches |
| ๐ข | `unique_per_conduit` | Scope | Request / session state |
| ๐ข | `many` | Nothing โ new every meld | Stateless workers, DTOs |
| ๐ก | `unique_per_conduit_lineage` | A scope **and its children** | Shared context down a tree |
| ๐ก | `unique_per_spell_space` | A request-local space | Ephemeral request scoping |
| ๐ก | [`managed_spell_quantity`](https://github.com/Synaptic724/melder/blob/prod/README.md#-managed-spell-quantities) | Nothing โ leased from a pool the root keeps | Costly objects reused across holders |
| ๐ | `unique_per_conduit_cluster` | A named group of scopes | Cross-scope coordination |
**The first three are the beginner set** โ they cover most systems and need
nothing but a static conjure. The rest arrive with the need that gives them
meaning: lineage and spell spaces once you have nested scopes, managed pools
once an object costs more to build than to lend, clusters once conduits link
into groups.
For the intermediate leasing and release example, see
[Managed Spell Quantities](https://github.com/Synaptic724/melder/blob/prod/README.md#-managed-spell-quantities).
> Callables are always `unique`. Want a fresh object every time? Bind a **class**
> as `many`.
## Runnable examples
- [Lifecycles unique vs many](../examples/beginner/02-lifecycles-unique-vs-many.md) โ Beginner 02
- [Existence unique](../examples/beginner/13-existence-unique.md) โ Beginner 13
- [Existence many](../examples/beginner/14-existence-many.md) โ Beginner 14
- [Existence unique per conduit](../examples/beginner/15-existence-unique-per-conduit.md) โ Beginner 15
- [Many state isolation](../examples/beginner/29-many-state-isolation.md) โ Beginner 29
[All beginner examples](../examples/beginner/index.md) ยท [Level contents](index.md) ยท [Full contents](../contents.md)
[Canonical page source](https://github.com/Synaptic724/melder/blob/90d52e0a12cb0743d62568d5a19ce954a54443bc/README.md)