Hi @dchiesa1 ,
We have Lookup cache , Assign Message (Set variable), Populate cache policies in the same order.
When a new request comes in, it looks for cache and if there is no entry the next two policies will get executed.
<Condition>(lookupcache.Lookup-Cache-1.cachehit == false)</Condition>
When a cache is populated, it is stored in Message processor cache(L1 - In-memory cache) in the Message Processor which received the request.
So, the MP which received the request, will it send the cache value to L2 persistent cache immediately? so that other MP which gets the request will be able to use the cached value? (Consider a heavy load testing scenario)
When a cache entry is invalidated or needs to be renewed due to expire time:
2 Message Processors have L1 cache.
Message Processor 1 received a request. Cache value should be renewed. It updates the cache value in L1. It's another duty is to send a broadcast to other Message Processor(2) to update the cache.
If this broadcast fails, Message Processor 2 has invalid cached value in L1. As the L1 cache is still there it won't look for cached value in L2.
In this case, the request will fail in my scenario. How to check it this broad casting is failing?
Even if the broadcast has failed between Message Processors will it send the cache value to L2?
Thank you in advance!