The conductor delegates messages from the consumer to the streams.

class faust.transport.conductor.ConductorCompiler[source]

Pregenerate a function to handle the messages for a topic+partition.

build(conductor: faust.transport.conductor.Conductor, tp: faust.types.tuples.TP, channels: MutableSet[faust.transport.conductor._Topic]) → Callable[faust.types.tuples.Message, Awaitable][source]
Return type:Callable[[Message], Awaitable[+T_co]]
class faust.transport.conductor.Conductor(app: faust.types.app.AppT, **kwargs) → None[source]

Manages the channels that subscribe to topics.

  • Consumes messages from topic using a single consumer.
  • Forwards messages to all channels subscribing to a topic.
logger = <Logger faust.transport.conductor (WARNING)>
acks_enabled_for(topic: str) → bool[source]
Return type:bool
clear() → None[source]

This is slow (creates N new iterators!) but effective.

Return type:None
coroutine commit(self, topics: AbstractSet[Union[str, faust.types.tuples.TP]]) → bool[source]
Return type:bool
coroutine on_partitions_assigned(self, assigned: Set[faust.types.tuples.TP]) → None[source]
Return type:None
coroutine wait_for_subscriptions(self) → None[source]
Return type:None
add(topic: Any) → None[source]

Add an element.

Return type:None
discard(topic: Any) → None[source]

Remove an element. Do not raise an exception if absent.

Return type:None

Label used for graphs. :rtype: str


Label used for logging. :rtype: str