Let's say we will not use distributed caching because we want that our microservices are independent and they do not have many single point of failures. Either we will have in-memory cache (simple hashmap in every microservice instance) or we will have one REDIS per service kind.
If the service
A needs some data from the service
B then it will cache the value in
REDIS-A. Here comes the problem: when B changes the data after receiving some PATCH request, how it can also invalidate the data in
Let's say we do not want to use any form of messaging for it (is it not overkill?)