dfx 0.1.0
Linux-based dynamic dataflow executor
Loading...
Searching...
No Matches
dfxd - dfx Daemon and Instance Manager

Overview

dfxd is the long-running daemon of the dfx project.

Its primary job is to supervise and manage one or more dfx instances on the local machine. It provides a stable control plane so that instances can be created, started, stopped, queried, and reconfigured without tying that responsibility to a single interactive dfx process.

Responsibilities

dfxd typically provides:

  • instance lifecycle management (create/start/stop/kill/remove),
  • process supervision (spawn and monitor dfx instances),
  • control interface for external tools (primarily dfx-ctl),
  • centralized configuration for daemon-level defaults and policies.

In other words: dfx executes graphs, while dfxd manages executors.

Control interface

dfxd exposes a control API over a Unix domain socket.

This interface is designed to be:

  • local-machine friendly (no network exposure by default),
  • scriptable (machine-readable request/response),
  • suitable for orchestration tools and CI environments.

dfx-ctl is the canonical client for this interface.

Instances

An instance is a managed dfx process with its own:

  • graph configuration and runtime state,
  • control socket,
  • lifecycle independent from other instances.

dfxd keeps track of these instances and provides an API to:

  • enumerate them,
  • reach their control endpoints,
  • apply policies consistently across them.

What dfxd is (and is not)

dfxd is:

  • a daemon / supervisor for dfx processes,
  • the recommended way to run multiple managed dfx instances,
  • the main service endpoint for operational control via dfx-ctl.

dfxd is not:

  • a graph execution engine (that is dfx),
  • a UI application.