File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes EJB and other Java EE Technologies and the fly likes caching local objects Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Spring in Action this week in the Spring forum!
JavaRanch » Java Forums » Java » EJB and other Java EE Technologies
Bookmark "caching local objects" Watch "caching local objects" New topic
Author

caching local objects

Raj Joe
Ranch Hand

Joined: Oct 15, 2004
Posts: 41
I am caching ejb local objects (stateless session beans)in the service locator in the class level static hashmap variable.

So I have a hashmap(cache of local objects) in one JVM
Will there be any impact of this caching in clustered environment?

I believe that in each server in the cluster there would be a hashmap(cache of local objects).This means that I will have same local object cached in different JVM hashmap.
David Harkness
Ranch Hand

Joined: Aug 07, 2003
Posts: 1646
Originally posted by Raj Joe:
This means that I will have same local object cached in different JVM hashmap.
No. Since you are caching references to local EJBs -- meaning they are in the same JVM -- each JVM cache will reference a different set of local EJBs (those in its JVM).
Raj Joe
Ranch Hand

Joined: Oct 15, 2004
Posts: 41
Originally posted by David Harkness:
No. Since you are caching references to local EJBs -- meaning they are in the same JVM -- each JVM cache will reference a different set of local EJBs (those in its JVM).


I am using a singleton (service locator).I am using an hashmap as static class variable to cache all remote/local objects.

In clustered environment I will end up having one service locator per JVM.
Even the static hashmap which hold references will be one per JVM.

My concern is even though a reference may be available in one JVM cache,because of clustering the request may go to other JVM and create a new reference in cache in that JVM.

Is there any impact of caching remote/local references in this way wrt to clustered environment

[ October 27, 2004: Message edited by: Raj Joe ]
[ October 27, 2004: Message edited by: Raj Joe ]
nilesh Katakkar
Ranch Hand

Joined: Oct 27, 2004
Posts: 35
As long as you are caching EJBLocalHome / RemoteHome reference you should be fine. Actual implementation of Home interface is implemented as single ton by most of the app servers. Each JVM will maintain reference to EJB<Local/Remote>Home Ojbect available on that box.
Clustering should not matter.

I hope you are trying to store reference to EJBLocalObject / EJBObject. Won't make sense to do so.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: caching local objects