Hello, Gattaka, you wrote: G> When we update . We can update it in service A, but not update in the client to service B. There will be an error in runtime, since dll c one. And two assembly of service on different versions. G> or it is possible to update the version everywhere, but it is not necessary and it is not convenient very much. Since refer to it all. How in this case to be? It actually was the main question. I am more on JVM, but unless in # the pattern does not have concept binary compatibility? In an ideal, such parts as , should remain backward-compatible. Retreats from this rule lead IPC, OSGi, to microservices.