Realizado

Integração com o Mercado livre

Publicado em 14 de Junho de 2021 dias na TI e Programação

Sobre este projeto

Aberto

Nesse projeto é requerido o desenvolvimento de um sistema que realize a integração entre dois sistemas externos, o primeiro deles é a API do Mercado Livre e o outro é um sistema proprietário nosso, cujo a interface de comunicação é em GraphQL. O sistema a ser desenvolvido, denominado AdapterML, tem dois servidores dependentes entre si através do banco de dados. O primeiro servidor é o de comandos, que tem por objetivo receber comandos na linguagem do GraphQL e traduzir esses comandos para a API do Mercado Livre.
A lista de comandos e como traduzi-los aparecem nas próximas seções. O segundo servidor é o de notificações, que tem por finalidade receber as notificações enviadas pelo mercado livre e a posteriori traduzi-las e enviá-las para o nosso servidor principal, que utiliza a linguagem GraphQL para se comunicar.
Esses dois servidores do AdapterML usarão um sistema de gerenciamento de tarefas (Celery), pois todos os comandos disparados para o servidor GraphQL e todas as notificações que chegarão no servidor de notificações terão que disparar em seguida uma tarefa através do celery (o celery usa um banco de memória que deverá ser o RabbitMQ).
Dessa forma cada servidor terá uma pasta para agrupar as tarefas das quais são responsáveis.
O orquestramento do sistema usando docker e docker-compose é opcional, porém facilita bastante o desenvolvimento e os testes. O docker será usado quando esse sistema for para a próxima etapa de evolução, um arquivo Dockerfile para construir a imagem do sistema pode ser passado já no início do projeto.


Nas próximas seções falaremos quais são os casos de comunicação que deverão ser desenvolvidos, em seguida quais dados precisam ser salvos no banco de dados(postgres:11). Após trataremos sobre quais são as tarefas a serem implementadas com o celery, por último falaremos sobre como deve ser desenvolvida o servidor GraphQL do AdapterML apresentando a interface de comunicação e também sobre como serão enviadas as notificações para o servidor Thoculi novamente apresentando a interface de comunicação em GraphQL.
As tecnologias necessárias conhecer ou aprender para o desenvolvimento desse sistema são:

Django
Graphene-Django
Django REST framework
Celery
JWCripto
Docker
Docker compose
RabbitMQ

Categoria TI e Programação
Subcategoria Programação
Qual é o alcance do projeto? Alteração média
Isso é um projeto ou uma posição de trabalho? Um projeto
Tenho, atualmente Eu tenho o design
Disponibilidade requerida Conforme necessário
Integrações de API Outros (Outras APIs)
Funções necessárias Desenvolvedor

Prazo de Entrega: 30 de Junho de 2021

Habilidades necessárias

Outro projetos publicados por T. F.