|
|
|
|
|
by koblinski
1881 days ago
|
|
How does ReleaseHub work when you're working with a lot of microservices? I find the challenge isn't necessarily with monoliths, but our microservice-happy architecture design puts a lot of strain on devops, environment reliability, development, etc. |
|
At a high level, the way ReleaseHub solves this issue is through a feature we call App Imports. Each App would be microservice and there would be one application that imports all the others. For the sake of simplicity let's have two microservices, Frontend and Backend. Frontend would import Backend and when a deployment goes out, ReleaseHub would deploy Backend first, followed by Frontend. Both deployments end up in the same Kubernetes namespace so the pods can talk to each other directly.
This setup allows for creating the dependencies needed to run the services. If you wanted to set up Backend to only deploy itself and say run integration tests against it, you don't have to connect it to any other services. But Frontend may be useless without Backend, so hooking them together is a requirement.
[1] - https://docs.releasehub.com/getting-started/common-setup-exa... [2] - https://docs.releasehub.com/examples/app-imports-connecting-...