HareMq (hare_mq v0.1.2)
To use HareMq in your Elixir project, follow these steps:
Install the required dependencies by adding them to your mix.exs
file:
defp deps do
[
{:hare_mq, "~> 0.1.2"}
]
end
Publisher
defmodule MyApp.MessageProducer do
use HareMq.Publisher,
routing_key: "routing_key",
exchange: "exchange"
# Function to send a message to the message queue.
def send_message(message) do
# Publish the message using the HareMq.Publisher behavior.
publish_message(message)
end
end
Consumer
defmodule MyApp.MessageConsumer do
use HareMq.Consumer,
queue_name: "queue_name",
routing_key: "routing_key",
exchange: "exchange"
# Function to process a received message.
def consume(message) do
# Log the beginning of the message processing.
IO.puts("Processing message: #{inspect(message)}")
end
end
Usage in Application: MyApp.Application
defmodule MyApp.Application do
use Application
def start(_type, _args) do
children = [
# Start the message consumer.
MyApp.MessageConsumer,
# Start the message producer.
MyApp.MessageProducer,
]
opts = [strategy: :one_for_one, name: MyApp.Supervisor]
Supervisor.start_link(children, opts)
end
end
Configuration
config :hare_mq, :amqp,
host: "localhost",
url: "amqp://guest:guest@myhost:12345",
user: "guest",
password: "guest"
Summary
Functions
Callback implementation for Application.start/2
.
Functions
Link to this function
start(type, args)
Callback implementation for Application.start/2
.