Hanson, Hanson Char wrote: > Your model about the remote cache service (RCS) is not quite accurate. > > RCS does NOT load the item, it simply returns null to the requesting > client, > C1, who upon getting null from the cache will load it and put the item to > the local cache, which in turn will propagate it to RCS, which in turn will > propagate an invalidation message to other clients, C2, C3, etc, resulting > in only the requesting C1 and RCS having the cache item. Subsequent > requests from C2 and C3,etc. will result in retrieving the cache item from > RCS. Hence the cache item in C1 and RCS will gradually get synchronized to > the other requesting client caches. > > Note loading of an item is ALWAYS done via a client cache.
Thanks for explaining, now it's much clearer. What about the following question (does the chache server has to have as much cache space as all the cache clients combined): suppose again, that C1 and C2 have a certain object, O1. suppose that C3 asks for another object, O2. to load O2, the cache server CS runs out of space and has to remove O1 from its cache. what happens now? will C1 and C2 still hold O1? or will they get an invalidate message about it? what if they change O1? can the cache server send an invalidate message around for an object it does not hold? in short: does the chache server has to have as much cache space as all the cache clients combined? Akos -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
