the currently generated dispatcher.any has a pessimistic auto-invalidation of cache:
in combination with the default statfileslevel "0" this makes almost the whole files in the cache to be invalidated upon each replication. but the auto invalidation is intended to be used for cross-dependencies like navigation links.
I think rule #2 is also redundant, because by default you don't have anonymous access to the /apps folder.
in the newest version dispatcher.any (v4.1.11) this is very optimisitc
I think it is better to use these rule and mybe allow invalidation of *.json files as well.
also the default /statfileslevel should be "1" to make the worst auto-invalidation only from /content not from jc:root