Hi Aaron,

Does the JCSWorker function across JVM's sharing a remote cache? 

Or is it just the same local cache in the same JVM?

Thanks,
Simon

-----Original Message-----
From: Aaron Smuts [mailto:[EMAIL PROTECTED] 
Sent: Friday, June 23, 2006 9:59 PM
To: JCS Users List
Subject: Re: JCS thread safe question.

There is a utility called jcs worker that will do what
you need.

http://svn.apache.org/viewvc/jakarta/jcs/trunk/src/java/org/apache/jcs/utils/access/JCSWorker.java?revision=332196&view=markup





--- emily chen <[EMAIL PROTECTED]> wrote:

> Hi Aaron,
>    
>   If I don't use a lock, thread 1 gets the report
> from cache by key, not data found, so it goes to DB
> to get the report;  before it puts the report into
> cache, thread 2 accesses the cache by the same key,
> and can not find the report, so it goes to DB to get
> the data again. That means two thread will access DB
> twice. But I want they just acces DB only one time
> to get the same report.
>    
>   In my web application, it takes serval mins to run
> a long report. Does it make sense to use a lock to
> reduce DB access?
>    
>   Thanks,
>    
>   Lucy
>    
>   
> 
> Aaron Smuts <[EMAIL PROTECTED]> wrote:
>   I don't understand what you need a lock for. You
> can
> go get the report, and then put it in the cache
> under
> the same key. You don't need to lock the key. Until
> the new report is ready, client will get the old one
> from the cache. Simply put the new value in the
> cache
> under the smae key name and it will replace the old
> value.
> 
> Aaron
> 
> --- emily chen wrote:
> 
> > Hi Aaron,
> > 
> > I got you. I will implement the lock in my web
> > application.
> > 
> > Many thanks,
> > 
> > Lucy
> > 
> > Aaron Smuts wrote:
> > Of course JCS is Thread safe, if you mean that it
> > can
> > handle multiple threads accessing the same regions
> > at
> > the same time. 
> > 
> > It doesn't work the way you described, but it is
> > thread safe. You won't get a corrupted value for a
> > key. 
> > 
> > As for the memory cache, it is a reference cache.
> It
> > returns references to objects in memory. It does
> not
> > clone the values. If you are manipulating objects
> > that are in the cache, any other Thread could get
> a
> > reference to that same object. . .. It is best to
> > clone objects that are retrieved from the cache
> > prior
> > to modifying them or just don't modify objects
> that
> > have been put in the cache.
> > 
> > Aaron
> > 
> > --- emily chen wrote:
> > 
> > > Hi there,
> > > 
> > > I want to use JCS for my web application, and
> have
> > > some thread safe question.
> > > 
> > > Here is scenario: 
> > > 
> > > I have a JCS cache named
> > пїЅePINBatchReportCacheпїЅ?
> > > which is used to save the ePIN Batch Report
> data.
> > > 
> > > Thread 1:
> > > 1) Get report data from Cache for key.
> > > 2) If not data found in the cache, then lock
> > > the cache for that key.
> > > 3) Get report data from database.
> > > 4) Put the report data in cache for key
> > > 5) Release lock for that key.
> > > 
> > > Thread 2:
> > > 1) Get the data from cache for key.
> > > 2) Wait for lock to be released (should have
> > > max wait time here).
> > > 3) Get the data from cache.
> > > 
> > > Does JCS have the above functionality -- lock
> the
> > > key of cache? Or I have to put lock on the key
> in
> > > my web application source code?
> > > 
> > > Thank for your help.
> > > 
> > > Lucy 
> > > 
> > > 
> > > ---------------------------------
> > > Yahoo! Messenger with Voice. Make PC-to-Phone
> > Calls
> > > to the US (and 30+ countries) for 2пїЅ?min or
> less.
> > 
> > 
> >
>
---------------------------------------------------------------------
> > To unsubscribe, e-mail:
> > [EMAIL PROTECTED]
> > For additional commands, e-mail:
> > [EMAIL PROTECTED]
> > 
> > 
> > 
> > 
> > ---------------------------------
> > Yahoo! Messenger with Voice. PC-to-Phone calls for
> > ridiculously low rates.
> 
> 
>
---------------------------------------------------------------------
> To unsubscribe, e-mail:
> [EMAIL PROTECTED]
> For additional commands, e-mail:
> [EMAIL PROTECTED]
> 
> 
> 
>               
> ---------------------------------
> Ring'em or ping'em. Make  PC-to-phone calls as low
> as 1пїЅ/min with Yahoo! Messenger with Voice.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]


This message and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity to whom they are addressed. If 
you have received this message in error please delete it and any files 
transmitted with it, after notifying [EMAIL PROTECTED] 
Any opinions expressed in this message may be those of the author and not 
necessarily those of the company. The company accepts no responsibility for the 
accuracy or completeness of any information contained herein. This message is 
not intended to create legal relations between the company and the recipient. 
Recipients should please note that messages sent via the Internet may be 
intercepted and that caution should therefore be exercised before dispatching 
to the company any confidential or sensitive information. 
Mizuho International plc Bracken House, One Friday Street, London EC4M 9JA. 
TEL. 020 72361090. Wholly owned subsidiary of Mizuho Securities Co., Ltd. 
Member of Mizuho Financial Group. Authorised and regulated by the Financial 
Services Authority. Member of the London Stock Exchange. 

Registered in England No. 1203696. Registered office as above.


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to