[PROMOÇÃO] Assine com + 30% de desconto ANUAL MENSAL (últimas horas)
Willen de assis rocha
Criador Willen de assis rocha 13/03/2022

Boa tarde professor,

Se eu trabalho com uma API preciso inserir na fila pois como ela funciona

 

O cliente faz o pedido eu envio para o parceiro o parceiro me retorna o ID.

Como faço para pegar esse ID retornado por um  JOB ?

 

Exemplo
Envio os dados

Servidor me retorna OK e o ID do pedido que enviei. Como consigo pegar esse ID retornado pelo JOB e editar meu registro de ORDER que foi gerado ?

Manager Carlos Ferreira 13/03/2022

Olá, Willen!
Tudo bem?

Só para mim entender amigo, você quer enviar uma fila para outro microservice, e assim que ele receber, ele te retorna uma outra mensagem para dizer que está tudo ok? Seria isso?

Se for existem alguns cenários.

Você pode manter a comunicação unilateral como fizemos, enviando as mensagens para o microservice que vai processar. Até aqui ok, na de novo.

Você pode criar um Job exatamente igual ao que criou no outro microservice para receber essa mensagem de Ok.

Resumindo, você terá dois producer (quem envia os jobs - dispara os eventos). Um igual como está, e o outro quem recebeu a mensagem também dispara um novo JOB.

PS. Sempre lembre do nome da filas, cada microservice tem o seu nome, é assim que conseguimos direcionar cada um para o seu microservice correto.

---

Outro caminho mais complexo um pouco, seria criar um producer (quem envia) e também criar um consumer (que vai receber), mas não através de JOBS como fizemos, mas sim algo mais manual.

Se precisar de algo nesse nível, aí fica mais fácil usar esse package aqui: https://github.com/php-amqplib/php-amqplib

Usei ele em um projeto mais avançado, e foi o que me atendeu.

-----

Fui claro amigo?

Carlos Ferreira
Sabe a Solução? Ajude a resolver!

Precisa estar logado para conseguir responder a este ticket!

Clique Aqui Para Entrar!