API Reference dandelion v#0.2.0

Copy Markdown View Source

Modules

A cache in memory, on each node. ≈ Redis / Memcached used as a cache — but it lives inside the app (Cachex), so a read costs no network trip.

Keeps the node's cache in step with the others: removes keys that another node deleted (Dandelion.Cache.delete/1), and empties the cache when a node joins — the two sides may have missed each other's deletes while apart.

Nodes finding each other. ≈ service discovery (Consul, Kubernetes DNS).

A libcluster strategy: nodes find each other through a Postgres channel.

The database changes dandelion needs, called from your own migration — the way Oban.Migration is

Durable pub/sub: a topic, and the workers that each get every event. ≈ Google Pub/Sub topics with subscriptions, or Kafka consumer groups.

The Oban setup of a dandelion app: what queues exist, the schedule, and how a job left by a dead node is given back.

A queue that keeps order per key. ≈ SQS FIFO message groups, Kafka partitions, Pub/Sub ordering keys.

Mix Tasks

Adds one resource to a domain of a dandelion project, in the layout the project already uses — the way you'd copy shop and rename it, done for you.