There are a couple of consequences to your method of caching data:

1. You certainly will hit concurrency issues. Your container will most likely 
hold a pool of SLSB instances, enabling it to service requests from a number of 
client. These request may result in concurrent access of your cache data.

2. This will certainly not work in a clustered environment. The different 
container instances will run under different JVMs. Static data is only shared 
between classes runnign in the same JVM.

SLSB are simply not designed to be used in this way. The JEE5 framework is 
designed in such a way that developers do not have to worry about the mechanics 
of concurrent accesses or clustering. You are breeaking this!

Are you sure that you need this cache which you have implemented? Have you 
executed performance tests and found that the system is slow?

Optimising for performance too early results in ver porr designs.

Are you aware fo the fact that Hibernate offers 3 levels of caching? I should 
imagine that your data will sit quite happily within the Hibernate L2 cache and 
that your database will not be repeatedly hit.

If you do test your system and find that the performance is poor, your first 
strtegy shoud be to try tuning teh system, not to hacjk together a cache!

Regards,
Colin E.

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4028861#4028861

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4028861
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to