bbarreto / sinesp-nodejs

🚗 Consulta de placa na base do SINESP
https://www.npmjs.com/package/sinesp-nodejs
59 stars 21 forks source link

ECONNRESET ao usar a sinesp-nodejs em um servidor na nuvem #7

Closed lucascoelhof closed 7 years ago

lucascoelhof commented 7 years ago

Olá,

O módulo funciona perfeitamente no meu computador pessoal, mas quando eu tento subir ele para minha instância no Google Cloud eu recebo este erro:

{ "error": { "code": "ECONNRESET", "errno": "ECONNRESET", "syscall": "read" } }

Vi que o erro também persiste aqui https://npm.runkit.com/sinesp-nodejs. Já enfrentaram esse erro antes?

giovanigenerali commented 7 years ago

@lucascoelhof tive esse problema também rodando no Heroku e AWS, provavelmente deve ser bloqueio e tenha que usar um proxy pois o SINESP deve bloquear as requisições originadas de fora do Brasil.

Fiz uns testes em uma versão em PHP e consegui utilizando os proxy's listados aqui https://www.proxynova.com/proxy-server-list/country-br/

Ainda não tive tempo de testar a versão em node aqui passando por um proxy para ver se não gera esse retorno. Pelo que andei lendo deve ser isso mesmo https://stackoverflow.com/a/17637900/4056362

Espero ter ajudado em algo, abs.

giovanigenerali commented 7 years ago

@lucascoelhof Complementando:

Eu usada um server grátis no OpenShift 2 que rodada tranquilo mas ontem eles encerraram os serviços. Agora tem uma nova versão 3.0, tenta subir um server aqui https://manage.openshift.com e ver se consegue.

Ainda está funcionando na versão 2.0 só não sei até quando: https://placaveiculo-wgenial.rhcloud.com/AFF7098

lucascoelhof commented 7 years ago

@giovanigenerali valeu cara! Aparentemente deve ser isso que você descreveu, eles estão bloqueando IPs fora fo Brasil. Engracado que eu até criei uma instância no GCP em SP pra testar, e mesmo assim bloqueou. Vou testar esse proxy depois, e enquanto isso vou rodar no seu servico aí. Valeu!

dv336699 commented 7 years ago

@lucascoelhof tive exatamente o mesmo problema e no final, usei o Jelastic da Locaweb por estarem usando servidores no Brasil. Apesar de não gostar da Locaweb, o serviço do Jelastic que não é feito por eles funciona bem. Claro que um proxy resolve, mas acho que é mais um ponto de falha que talvez não queira estar na sua aplicação.

lucascoelhof commented 7 years ago

@diego-vieira Muito bom esse Jelastic! Parece que há algo de errado no GCP porque as instâncias de SP deles estão apontando pra Califórnia nesses sites de IP lookup. Como minha aplicação ainda está em desenvolvimento, deixei rodando numa raspberry pi lá em casa e tá funcionando belezinha. Mas obrigado a todos pelas sugestões!!!

julio25frantz commented 5 years ago

Conseguiram configurar o proxy no módulo da sinesp-api?

dv336699 commented 5 years ago

@julio25frantz creio que o mais prático seria contratar um VPS no Brasil pra fazer as consultas a partir dele.

julio25frantz commented 5 years ago

@diego-vieira configurei um proxy mesmo, funcionou! Porém, como as vezes o proxy fica off, as consultas falham, então, irei configurar uma lista de proxys, assim, quando uma consulta falhar, ele tenta consultar com outro proxy.

giovanigenerali commented 5 years ago

a solução que o @julio25frantz passou ai é a melhor, eu já tive que fazer isso. Criei uma lista de proxy e coloquei um timeout, se estourar o tempo pula para o próximo e assim por diante.

Screen Shot 2019-08-08 at 7 42 42 PM

Screen Shot 2019-08-08 at 7 44 25 PM

giovanigenerali commented 5 years ago

a solução que o @diego-vieira passou ai é a melhor, eu já tive que fazer isso. Criei uma lista de proxy e coloquei um timeout, se estourar o tempo pula para o próximo e assim por diante. Screen Shot 2019-08-08 at 7 42 42 PM Screen Shot 2019-08-08 at 7 44 25 PM

Quem?!

Sorry, fixed ;)