Using Redis and Postgres
In this recipe, we will be using Redis and Postgres. The idea is to exemplify how we can interact with these applications. Redis will be used as a message broker. We will implement the pub-sub pattern. Using the Redis console, we will publish messages on a specific channel, and our Elixir application will be subscribed to that channel and will retrieve those messages, saving them in a relational database (Postgres) afterwards.
The idea behind the use of Redis is to show you how we can use it to pass messages between applications. If we have two Erlang or Elixir applications, we can connect them and pass messages between them without using any message broker. It is even recommended that you not use any intermediate non-Elixir or non-Erlang application, because we would then have to add the overhead of data marshaling and unmarshaling. Between applications running in the Erlang VM, however, marshaling and unmarshaling are not required. However, what if we want to connect...