Hi, I'm a newbie to JCS, and I have a few questions on remote caching.
Firts I'd like to be sure that I understand this feature right. The setup looks like the following: - there is a cache server machine, CS - there are a number of cache client machines, say C1, C2, C3, ... the application asks for objects from the client caches. if that client cache (say, C1) does not have the object (say, O1), it asks for it from the cache server. if the cache server does not have the object, it loads it. either way, it returns the (by now surely cached) object to the cache client. thus as a result, object O1 will be held at both CS and C1. if another client (say, C2) asks for the same object O1, the cache server sends the object to it. by now, CS, C1 and C2 all hold object O1. suppose C1 and C2 have object O1. if the object changes through C1, an invalidate message sweeps through all the clients. C2 sees that an object it has is not valid anymore, and remvoes it from its local cache. C3 doesn't do anyting as it didn't have the object in the first place. as a result, C1 will have the updated object O1, but not any of the other caches, not even the cache server CS? 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? Thanks for all answers, Akos Maroy -- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
