0

I have a node.js API microservice that leverages graphql library. My API microservice connects with another node.js microservice that does a graphql mutation inside a MySql database. My api microservice is set up as a proxy in production inside of Apigee (I'm not too familiar with the process, since another team handles it).

My node.js API microservice runs successfully in local and staging environments (I'm able to call my microservice which then invokes the 2nd node.js microservice which in turn successfully updates the correct records in the MySql database), BUT when I run the same service in production, I get the following error (I did a console.log of the error message):

  request to http://abc.dev.com/my_proxyName/graphql failed. reason: connect 
   ECONNREFUSED 10.XX.YY.XX:90

Has anyone else faced a similar issue and if so - how was it resolved? Everything that I'm able to glean on the meager google search results is that this is connected to Apigee and has nothing to with MySql - would that be right assumption?

Roger Dodger
  • 927
  • 2
  • 16
  • 37
  • 1
    The error message clearly told that some node in your apigee network chain didn't open port 90 for receiving request. It's hard to tell from just an error message but you should check your production networking (allowed ports) and your apigee setting. – Dat Pham Jul 11 '19 at 01:47
  • @DatPham - you're right there's something that's blocking the request but the same 2nd microservice that my microservice is calling runs fine when invoked from the UI (different application) - what could be the possible reason/s for that? – Roger Dodger Jul 11 '19 at 15:27
  • 1
    Have a look at this network diagram here https://docs.apigee.com/private-cloud/v4.18.05/port-requirements. I couldn't see any node using port 90 for anything. Could this be a misconfig in your Apigee for port 9000? Searching for port 90 it's belongs to dnsix (a networking protocol) and not related to Apigee settings whatsoever. So I suggest you either check your Apigee config for any mistake or check your VPS networking. – Dat Pham Jul 12 '19 at 00:30
  • Dat - my mistake in the original post (I was typing it out instead of copy/paste) - that port is 80, not 90 – Roger Dodger Jul 12 '19 at 14:47
  • Is your production environment served via `https` rather than `http`? If so that would require change to the port used to `443` or possibly `8443` if using `TLS`. – dusthaines Jul 25 '19 at 15:54

0 Answers0