Expand description
quickwit-actors is a simplified actor framework for quickwit.
It solves the following problem:
- have sync and async tasks communicate together.
- make these task observable
- make these task modular and testable
- detect when some task is stuck and does not progress anymore
Structs§
- Actor
Context - Actor
Handle - An Actor Handle serves as an address to communicate with an actor.
- Kill
Switch - Mailbox
- A mailbox is the object that makes it possible to send a message to an actor.
- Observation
- Progress
- Progress makes it possible to register some progress. It is used in lieu of healthcheck.
- Protected
Zone Guard - Universe
- Universe serves as the top-level context in which Actor can be spawned. It is not a singleton. A typical application will usually have only one universe hosting all of the actors but it is not a requirement.
Enums§
- Actor
Exit Status - The actor exit status represents the outcome of the execution of an actor, after the end of the execution.
- Actor
Runner - The
ActorRunner
defines the environment in which an actor should be executed. - Actor
State - AskError
- Error that occured while calling
ActorContext::ask(..)
orUniverse::ask
- Command
- Commands are messages that can be send to control the behavior of an actor.
- Health
- Describes the health of a given actor.
- Observation
Type - Queue
Capacity - Recv
Error - Send
Error
Constants§
- HEARTBEAT
- Heartbeat used to verify that actors are progressing.
Traits§
- Actor
- An actor has an internal state and processes a stream of messages. Each actor has a mailbox where the messages are enqueued before being processed.
- Handler
- Supervisable