This really depends on your use case. If you want a warm cache, replication is the best option.
Invalidation only really makes sense if you have a large data set (e.g., 50GB of data) and each node only handles a small subset of this data (e.g., 0.5GB). THis way it is extremely unlikely that 2 nodes would need the same data in memory at any given point. And as such,if data changes on one node, it should be evicted on other nodes - if the other nodes have it in memory.
OTOH, if you are using it to cache a set of drop down values, for example, which are needed on all nodes all the time, use replication.