View Source ExRocketmq.Consumer.Processor behaviour (lib_oss v0.1.0)
The processor is called when messages are received from the broker.
Summary
Types
rocketmq provide 18 delay_level: 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h delay_level=1 means 1s, delay_level=2 means 5s and so on.
Types
@type concurrent_consume_result() :: :success | {:retry_later, %{ required(ExRocketmq.Typespecs.msg_id()) => ExRocketmq.Typespecs.delay_level() }}
rocketmq provide 18 delay_level: 1s 5s 10s 30s 1m 2m 3m 4m 5m 6m 7m 8m 9m 10m 20m 30m 1h 2h delay_level=1 means 1s, delay_level=2 means 5s and so on.
@type consume_result() :: concurrent_consume_result() | orderly_consume_result()
@type orderly_consume_result() :: :success | {:suspend, non_neg_integer(), [ExRocketmq.Typespecs.msg_id()]}
@type t() :: struct()
Callbacks
@callback process( processort :: t(), topic :: ExRocketmq.Typespecs.topic(), msgs :: [ExRocketmq.Models.MessageExt.t()] ) :: consume_result() | {:error, term()}
Functions
@spec process(t(), ExRocketmq.Typespecs.topic(), [ExRocketmq.Models.MessageExt.t()]) :: consume_result() | {:error, term()}