Given four applications in a single project that will work as microservices:
"https://{default}/conferences":
id: conference
type: upstream
upstream: "conference:http"
"https://{default}/sessions":
id: session
type: upstream
upstream: "session:http"
"https://{default}/speakers":
id: speaker
type: upstream
upstream: "speaker:http"How can we make applications talk to each other?
To have applications talk to each other add the relationship to the application that wants to initiate the connection. For example, to have the conference application in the example above talk to the speakers application, add the following to the conference instance’s config.yaml file:
relationships:
speaker: speaker:httpThen you can consult the PLATFORM_RELATIONSHIPS environment variable for the domain name to use to send messages to that application. Omit the speaker application from routes.yaml entirely.
That is preferable to exposing each application on its own public URL just so that it can be accessed from another application.
Note that circular relationships are not supported, so you cannot have two applications that refer to each other in their relationships blocks. Only the “sending” side of the connection needs to have a relationship defined.
Comments
Please sign in to leave a comment.