graph LR
faust_worker_Worker["faust.worker.Worker"]
faust_app_base_App["faust.app.base.App"]
faust_cli_base["faust.cli.base"]
faust_transport_producer_Producer["faust.transport.producer.Producer"]
faust_transport_consumer_Consumer["faust.transport.consumer.Consumer"]
faust_tables_manager_TableManager["faust.tables.manager.TableManager"]
faust_agents_manager_AgentManager["faust.agents.manager.AgentManager"]
faust_sensors_monitor_Monitor["faust.sensors.monitor.Monitor"]
faust_worker_Worker -- "drives lifecycle of" --> faust_app_base_App
faust_worker_Worker -- "integrates with" --> faust_cli_base
faust_app_base_App -- "manages" --> faust_transport_producer_Producer
faust_app_base_App -- "manages" --> faust_transport_consumer_Consumer
faust_app_base_App -- "manages" --> faust_tables_manager_TableManager
faust_app_base_App -- "manages" --> faust_agents_manager_AgentManager
faust_app_base_App -- "manages" --> faust_sensors_monitor_Monitor
faust_cli_base -- "controls" --> faust_worker_Worker
The Faust Worker Runtime subsystem is the operational core of a Faust application, responsible for its lifecycle, interaction with Kafka, and exposing monitoring interfaces.
The primary entry point and orchestrator for a Faust application instance. It manages the complete lifecycle of the application, including startup, shutdown, signal handling, and ensuring the application's services are properly initialized and run. It acts as the runtime container for the Faust application.
Related Classes/Methods:
The core Faust application instance, responsible for initializing and managing all essential services and components required for stream processing. This includes Kafka I/O, state tables, agents, and sensors. It's the central hub for the application's business logic and data flow.
Related Classes/Methods:
Provides the foundational command-line interface (CLI) utilities and base classes for Faust applications, enabling users to interact with and control the Faust worker from the terminal.
Related Classes/Methods:
Handles the asynchronous production of messages to Kafka topics, ensuring reliable data output from the Faust application.
Related Classes/Methods:
Manages the asynchronous consumption of messages from Kafka topics, providing the input streams for the Faust application's processing logic.
Related Classes/Methods:
Oversees the creation, management, and persistence of state tables, which are crucial for stateful stream processing and maintaining application state across events.
Related Classes/Methods:
Manages the lifecycle and execution of Faust agents, which encapsulate the core stream processing business logic, consuming from and producing to topics, and interacting with state tables.
Related Classes/Methods:
Collects and exposes metrics and monitoring data about the Faust application's runtime performance, Kafka I/O, and agent activity, enabling operational visibility.
Related Classes/Methods: