1
resposta

erro em alguns microsserviços - servido node e php

Fiz o primeiro build mais cedo e rodou tranquilo, exatamente como no curso, mas, ao fazer em outro horário, apresentou o seguinte problema e não consigo contornar, como solucionar ?

ILog com erro de timeout do node e php

1 resposta

Olá, Matheus!

Pelo print que você compartilhou, parece que você está enfrentando problemas de timeout ao tentar conectar-se ao MongoDB e ao banco de dados SQL a partir de seus microsserviços Node.js e PHP, respectivamente.

Para o erro do Node.js, a mensagem MongoNetworkError: failed to connect to server [mongo:27017] on first connect [MongoNetworkTimeoutError: connection timed out] indica que o serviço do Node.js não conseguiu estabelecer uma conexão com o servidor MongoDB. Isso geralmente acontece quando o MongoDB não está rodando ou não está acessível na rede especificada. Aqui estão algumas etapas que você pode seguir para tentar resolver o problema:

  1. Verifique se o serviço do MongoDB está rodando e acessível na porta 27017.
  2. Certifique-se de que o serviço do MongoDB esteja configurado para aceitar conexões na rede que o seu microsserviço Node.js está tentando acessar.
  3. Se você estiver usando o Docker, verifique se os serviços estão na mesma rede do Docker e se o nome do serviço do MongoDB no seu arquivo docker-compose.yml corresponde ao nome usado na string de conexão (neste caso, mongo).

Para o erro do PHP, a mensagem SQLSTATE[08006] [7] timeout expired (SQL: select * from information_schema.tables where table_schema = public and table_name = migrations and table_type = 'BASE TABLE') sugere que houve um timeout na conexão com o banco de dados SQL. Isso pode ser causado por várias razões, incluindo problemas de rede ou configurações incorretas. Aqui estão algumas sugestões:

  1. Verifique se o serviço de banco de dados SQL está rodando e se as portas estão corretamente expostas.
  2. Confira se as credenciais e o hostname especificados no arquivo de configuração do PHP estão corretos e se correspondem aos do serviço de banco de dados.
  3. Se estiver usando o Docker, assim como no caso do MongoDB, verifique se a rede está corretamente configurada e se os serviços podem se comunicar entre si.

Além disso, como mencionado na aula, é importante garantir que as portas necessárias para os serviços não estejam sendo usadas por outros processos em sua máquina. Se necessário, pare outros serviços que possam estar utilizando as mesmas portas.

Espero que essas dicas ajudem a resolver os problemas que você está enfrentando. Qualquer coisa manda aqui. Bons estudos!