Segundo o diretor, o programa será editado e estará disponível para as rádios que tiverem interesse, já com 1 semana de antecedência, contend notícias do Brasil e do exterior.

O padrão de arquitetura ou comunicação Pub/Sub pra mim é uma daquelas coisas que muito ouvimos mas pouco vemos, neste post vou tentar explicar o seu conceito e criar um pequeno exemplo de chat utilizando Ruby e Redis.
Basicamente Pub/Sub ou Publisher/Subscriber é uma arquitetura de comunicação através de mensagens prima dos sistemas de fila (mensageria) como AMQP (Advanced Message Queuing Protocol), por exemplo o RabbitMQ, Apache Kafka ou Amazon SQS.
O pub/sub geralmente tem uma característica parecida com um broadcast, onde todos os inscritos (subscribers) de um canal recebem as mensagens emitidas pelos remetentes (publishers).
Uma das ferramentas mais conhecidas para se criar um pub/sub é o Redis. O Redis é um banco de dados no modelo chave valor que trabalha em memória, mas que também pode ser armazenado em disco através de snapshots e é muito famoso pela sua performance, talvez justamente por esse motivo é uma das ferramentas mais escolhidas quando é implementado um pub/sub.
Caso você tenha uma instância do Redis na sua máquina sendo executada em localhost na porta 6379 que é a porta default do Redis, não é necessária nenhuma configuração para seguir esse tutorial.
Primeiro vamos trabalhar no nosso publisher dentro do nosso arquivo pub.rb. Pra esse arquivo vamos precisar importar duas libs (gems) a própria gem do Redis e a gem Json pra transformar a nossa mensagem que será publicada no formato correto para o Redis.
O nosso publisher ao ser iniciado receberá dois parâmetros, o nome do canal que a mensagem será enviada e o nome do usuário que enviará a mensagem através de argumentos da linha de comando (ARGV).
Detalhe, o método .strip é utilizado para remover os “\n\n” que strings podem receber, tanto no começo quanto no fim.
O nosso subscriber vai ser o responsável por estar inscrito em um canal, receber as mensagens e executar alguma coisa com essas mensagens, nesse caso vamos apenas exibi-las no próprio terminal.
Vejam como funcionou comigo abrindo 3 abas no terminal, duas com o publisher e uma com o subscriber, simulando uma espécie de chat.