Tim,

please see inline ....

Werner

--Original Message Text---
From: [EMAIL PROTECTED]
Date: Wed, 4 May 2005 13:31:45 +0800


HI Werner,  

after a quick review of current and past Castor JDO issues in Jira for 
"caching", I stumbled across two entries :  

Add JMS publisher subscriber plugins for expire cache notification 
http://jira.codehaus.org/browse/CASTOR-875 

Add a distributed cache implementation. 
http://jira.codehaus.org/browse/CASTOR-674 

I have added the following comment to both issues :  

Is your JGroups-based Cache any closer to being integrated with Castor JDO 
0.9.7 ?  

Can the code be checked into a "pending" folder of the Castor CVS tree for 
viewing ?  


Looking at CASTOR-875, he sample code from Kalpesh Patel is a workable custom 
JMS approach, but requires the web 
app to register a background listener (eg. a servlet) and is tied to JMS.  

Like yourself, I think a more abstract layer, using JGroups (or OSCache) is a 
better longer term approach and would bring 
Castor JDO closer to Hibernate, which already allows a pluggable distributed 
cache.  

werner --> I agree with you here, and most likely we will try to integrate 
cache implementations such as JCache and/or 
JCS. Personally, I have not looked at OSCache yet, but that might change as 
well.

I have not yet attempted to code a custom approach (using a JGroups channel or 
OSCache cache), ...

werner --> I'd really appreciate any help I could get with this, especially 
with testing once this has been coded up. Any code 
and time you are willing to donate would definitely be welcome.

... but am curious as to how the objects in the cache will be isolated for a 
transaction.  

werner --> Not that's a completely different issue. With a listener-based 
approach, I can definitely see why you are 
mentioning this issues. But with an in-memory cache distribution mechanism, 
most of these issues *might* be addressed 
the the underlying cache engine used.

Consider the case where server A updates object A1 in the distributed cache, 
the cache framework fires a message to 
listeners on the network (via TCP, UDP or JMS) and server B then syncs its 
version of object A1. If object A is involved with 
transaction B1, how does the cache listener on server B update its version of 
object A1 without rolling back transaction B1 
due to a timestamp mismatch (or equivalent).  

I think I'm missing something here with Castor JDO's caching and locking 
mechanics for a transaction.  

Comments welcome.  


Tim.  

+++
Tim Telcik
Technical Application Architect
Business Systems Delivery
Information Technology Services, HBF, Inc.
Email: [EMAIL PROTECTED]
Tel: 9214 6744    Fax: 9214 6779

 


"Werner Guttmann" <[EMAIL PROTECTED]> 

02/05/2005 06:04 PM  Please respond to
[email protected] 

To 
<[email protected]>  cc 
Subject 
AW: [castor-dev] Distributed Castor JDO Cache  




Tim,  
   
no, nothing has been implemented yet. But we have been discussing this quite 
recently, and adding such distributed cache 
implemenations definitely is on our agenda for the one of the upcoming releases 
(0.9.9 or later). I've recently upgraded 
Castor's internal Cache interface so that integration with products like JCache 
or JCS will be easier.  
   
There's already an issue out there (assigned to myself) that will eventually 
add a distributed cache implementation that uses 
JCache internally. But I have decided to focus on support for polymorphism and 
Spring integration first, the former of which 
has been finished and awaits integration into the codebase. Given the way 
things go with the latter, I reckon that I'll be able 
to start working on such a cache implementation right after the 0.9.7 release 
in two weeks time  
   
Other than that, if you had some spare time (or some ready code .. ;-)), we'd 
really appreciate your contributions.  
   
Regards  
Werner  
-----Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Gesendet: Montag, 02. Mai 2005 11:51
An: [email protected]
Cc: [EMAIL PROTECTED]
Betreff: [castor-dev] Distributed Castor JDO Cache
 

To whom it may concern, 

has anybody implemented a pluggable distributed (synchronized) cache for Castor 
JDO based on JCache (or a related 
distributed caching API) ? 

Bruce Snyder refers to the intention of using JCache in comments at 
"http://hypermail.linklord.com/castor-
dev/2004/Jul/4697.html". Bruce's comments are in response to a query about 
distributed caches by Kalpesh Patel. 

We are looking at the problem of synchronizing multiple Castor JDO caches 
across multiple application servers on different 
hosts. 

A simple approach may be to notify listening Caches when the 
TxSynchronizable#commit method is invoked. JMS is a 
safer transport mechanism, but TCP is also a contender. 

Comments welcome. 


Tim. 

+++
Tim Telcik
Technical Application Architect
Business Systems Delivery
Information Technology Services, HBF, Inc.
Email: [EMAIL PROTECTED]
Tel: 9214 6744    Fax: 9214 6779



============================================================
HBF Health Funds Inc. a registered organisation under the National Health Act
HBF Insurance Pty Ltd ACN  009 268 277
This email is a confidential communication intended only for the named 
Addressee(s). If you are not that person any 
disclosure, copying, distribution or use of this email or the information in it 
is prohibited. Please notify us immediately by 
telephone, (+61) 08 9265 6111 or return email and delete this email.  




============================================================
HBF Health Funds Inc. a registered organisation under the National Health Act
HBF Insurance Pty Ltd ACN  009 268 277
This email is a confidential communication intended only for the named 
Addressee(s). If you are not that person any 
disclosure, copying, distribution or use of this email or the information in it 
is prohibited. Please notify us immediately by 
telephone, (+61) 08 9265 6111 or return email and delete this email. 




Reply via email to