Como utilizar a solution Send messages to a queue através do Marketplace da Azion
Visão geral
Send messages to a queue refere-se ao processo de adição de mensagens a uma fila. Esta fila é uma estrutura de dados que armazena mensagens na ordem “primeiro a entrar, primeiro a sair” (FIFO, em inglês). As mensagens são adicionadas na parte de trás da fila e removidas da parte da frente. As mensagens podem ser enviadas de forma assíncrona e processadas pelo componente receptor posteriormente, facilitando a comunicação entre diferentes partes de um sistema.
1. Obtendo a solution
Para obter a solution Send messages to a queue fornecida pelo Marketplace, siga esses passos:
- Acesse sua conta no Real-Time Manager (RTM).
- Se você não tiver uma, crie uma conta visitando a página de cadastro.
- No canto superior esquerdo da página, selecione Products menu > Marketplace.
- Na caixa de busca Explore for solutions, digite “message” ou navegue pelos cards para encontrar a solution Send messages to a queue.
- Selecione o card Send messages to a queue. Você será redirecionado para a página da solution.
- Na seção Subscribe for, localizada no canto inferior direito da tela, clique no botão Get It Now.
Nota: uma mensagem indica que a solution foi instalada com sucesso.
2. Usando a solution
A solution obtida no Marketplace é adicionada à sua lista de Edge Functions. Portanto, para usar a solution Send messages to a queue, você deverá selecionar uma edge application para incorporar a nova função.
Para essa tarefa, você tem diversos modos de ação. Os principais são:
- Visitar a documentação de ponto de partida para criar uma edge application.
- Criar uma edge application no RTM selecionando Products menu > Edge Application e seguir as instruções.
- Utilizar uma edge application já existente.
3. Configurando a solution
Após obter uma solution no Marketplace, é preciso configurá-la.
Para configurar a solution Send messages to a queue, complete os seguintes passos:
- Acesse o Real-Time Manager (RTM).
- No canto superior esquerdo da página, selecione Products Menu > Edge Application.
- Na lista de aplicações, selecione a edge application na qual deseja configurar a solution Send messages to a queue.
- Certifique-se de habilitar o interruptor Edge Functions na página principal da sua edge application para permitir o uso da sua nova solution.
- Clique no botão Save no canto inferior direito da página.
Nota: aparecerá uma mensagem indicando que a edge application foi atualizada com sucesso.
Isto ativará a guia Functions em sua edge application. Agora você será capaz de instanciar uma edge function Send messages to a queue em sua edge application.
4. Instanciando a solution
Para instanciar uma solution Send messages to a queue, siga os passos abaixo:
- Na lista superior, selecione a aba Functions.
- Clique no botão Add Function.
- Escolha um nome fácil de lembrar para a sua função.
- No menu suspenso de funções, selecione a função Send messages to a queue.
Isto irá carregar o código-fonte da função referente à solution Send messages to a queue. Logo acima, você terá duas abas: Code e Args. Se você clicar na aba Code, será possível navegar pelo código-fonte, mas sem alterá-lo.
A configuração de sua função estará na aba Args.
Clique na aba Args para editar o arquivo de configuração no formato JSON
, no qual você passará os parâmetros para executar sua aplicação.
Você pode configurar três serviços de mensageria: RabbitMQ, Amazon SQS e Kafka-REST. Para cada uma destas soluções, você terá parâmetros diferentes e credenciais diferentes, como mostrado nos exemplos abaixo:
AMQP:
{
"server_type": "amqp",
"connection_url": "https://my-service.azion.com/queue",
"connection_authorization": "Basic my_basic_auth",
"connection_args: {
"routing_key: "my_queue",
"payload: "my_custom_payload"
}
}
SQS:
{
"server_type": "sqs",
"connection_url": "https://my-service.azion.com/sqs-queue",
"connection_authorization": "Basic my_basic_auth",
"connection_args: {
"auth_params: "my_aditional_auth_params",
"version": "2012-11-05",
"expires": "Wed, 21 Oct 2015 07:28:00 GMT"
}
}
Kafka-REST:
{
"server_type": "kafka-rest",
"connection_url": "https://my-service.azion.com/topics/my-topic",
"connection_args: {
"payload": "my_custom_payload"
}
}
Onde:
server_type
: define o tipo de conexão utilizada (amqp
,sqs
,kafka-rest
são os três valores possíveis).connection_url
: define a URL do servidor do serviço que você escolher.connection_authorization
: o tipo de autorização necessária para a conexão. Este é um campo opcional.
Você também pode definir parâmetros adicionais para sua fila, passando-os na seção connection_args
. Cada serviço suportado tem parâmetros adicionais diferentes que podem ser utilizados. Estes não são obrigatórios para que a sua função rode no edge.
Importante: não é possível integrar o Kafka “as is” porque os clientes Kafka disponíveis para JavaScript (Kafka JS e Kafka Node) utilizam funcionalidades do NodeJS que são incompatíveis com o Azion Cells. Entretanto, você tem a opção de integrá-lo usando o Kafka-REST, um módulo que fornece uma interface HTTP RESTful para um cluster Kafka.
Para finalizar, clique no botão Save.
5. Definindo uma regra para o Rules Engine
Ainda na página de Edge Application, na guia Rules Engine, você tem que configurar as regras que deseja (criteria e behavior) aplicar a fim de executar sua função.
Para fazer isso, siga estes passos:
- Selecione a aba Rules Engine.
- Clique em Default Rule.
- Você não pode alterar o campo de criteria no Rules Engine para a Default Rule.
- No campo behavior, selecione Run Function no menu suspenso e depois selecione a opção Send messages to a queue, de acordo com o nome que você deu na etapa de instanciação.
- Clique no botão Save.
Pronto. Agora você tem a sua função funcionando no edge.
Não encontrou o que procurava? Abra um ticket.