Hi Javad,
Obviously this is not true, suppose that there are multiple instances of a service running at the same time(for horizontal scalability),how do we can synchronize access to some shared resources (such as a value in the cache or database)in high concurrent environment in distributed systems, for the sake of simplicity think about a service that receive a request and read some values from the cache and maybe modify them, if you have multiple process running the same service with concurrent requests, how do you guarantee synchronize access to the shared resource for keeping consistency. Of course as you see this is not a design issue but a challenge that raise from horizontal scalability.