We have grouped different functionalities in different applications for services. Each Fabric Application is responsible for a set of functionality in a specific area (for example, News, Blogging, User - all individual applications). Different groups can work with these areas of functionality.
Each application has an open REST API, such as / users or / news or / blogs. Thus, a publicly accessible website can call these endpoints and receive / publish information.
However, many times these Applications must communicate with each other. But what is the best way to set this up? There are two ways to get through, as far as I can see now:
- Create a new HTTP endpoint in each application that is intended for internal use only (using its own IP port, which is not published publicly). Directly connected.
- Use RPC calls (but this will create a “hard” connection between applications). Strongly connected.
For now, I think an HTTP endpoint would be the way to go, but I wonder if RPC calls are better? Is it, by design philosophy, allowed to use RPC calls between applications? Or can it cause problems when updating the application and changing the interface?
Or is there another template here?
source
share