3 ms·
That makes sense when you depend on a shared library. However, if service A depends on endpoint x in service B, then you still have to work out synchronized dep
by hckr1292 9mo ago
That makes sense when you depend on a shared library. However, if service A depends on endpoint x in service B, then you still have to work out synchronized deployments (or have developers handle this by making multiple separate deployments).
To be fair, this problem is not solved at all by monorepos. Basically, only careful use of gRPC (and similar technology) can help solve this… and it doesn’t really solve for application layer semantics, merely wire protocol compatibility. I’m not aware of any general comprehensive and easy solution.
- dheera 9mo ago> However, if service A depends on endpoint x in service B, then you still have to work out synchronized deployments (or have developers handle this by making multiple separate deployments). In a polyrepo environment, either: - B updates their endpoint in a backward compatible fashion, making sure older stuff still works OR - B releases a new version of their API at /api/2.0 but keeps /api/1.0 active and working until nothing depends on it anymore, releasing deprecation messages to devs of anyone depending on 1.0
- hckr1292 9mo agoRight, so all of that is independent of mono vs poly repo.