Я успешно установил соединение с AWS SQS. вот мой код:
def start_link(_opts) do
Broadway.start_link(__MODULE__,
name: __MODULE__,
producers: [
default: [
module: {
BroadwaySQS.Producer,
queue_name: "my_queue",
config: [
access_key_id: "key",
secret_access_key: "secret",
region: "ap-south-1"
]
},
stages: 60
]
],
processors: [
default: [
stages: 100
]
],
batchers: [
default: [
stages: 80,
batch_size: 10,
batch_timeout: 2000
]
]
)
end
# callbacks
def handle_message(_, %Message{data: data} = message, _) do
message
|> Message.update_data(fn data -> data * data end)
end
def handle_message(_, message, _) do
receipt = %{
id: message.metadata.message_id,
receipt_handle: message.metadata.receipt_handle
}
IO.inspect(receipt)
# Do something with the receipt
end
def handle_batch(_, messages, _, _) do
list = messages |> Enum.map(fn e -> e.data end)
IO.inspect(list, label: "Got batch from SQS")
messages
end
Я новичок в эликсире. Может ли кто-нибудь помочь мне с тем, как отправлять и получать сообщения из AWS SQS. какова цель функций handle_batch и handle_message. простите, если это детский вопрос.