Armin Waibel
Wed, 12 Mar 2008 06:44:21 -0700
Hi Cedric, Cédric Talon wrote:
Hi, I am new on this mailing list and so it is my first message.
welcome to this list!
I am working on a project which is using OJB in a distributed environment. The distributed issue is my problem ! I have read there are important points to respect in this case. The first one is to use Sequence Manager. It's ok for me. The second one is the locking issue. I am using the LockManagerRemoteImpl. So I think it is ok.
Do you use the ODMG-api implementation? http://db.apache.org/ojb/docu/guides/odmg-guide.html Only this implementation supports pessimistic locking by default. The PB-api http://db.apache.org/ojb/docu/guides/pb-guide.html only supports optimistic locking by default. http://db.apache.org/ojb/docu/guides/lockmanager.htmlFor best performance I would recommend to use optimistic locking (needs a 'version' column in the database table) for all concurrent modified persistence objects.
The last point is the cache issue. And this is the subject of this mail. Currently I am using ObjectCacheDefaultImpl. I know it is not suitable for distributed environment. That's why I'd like to use distributed cache.
Here you can find a short description how the cache works http://www.mail-archive.com/ojb-user@db.apache.org/msg16075.htmlMy estimation is that in most cases OJB will benefit more from a fast DB/DB-cache/network (in combination with a session cache) than from a distributed cache (except you do a lot of "get object by identity" stuff).
I would recommend to run some load tests with/without distributed cache.
I have heard about OS Cache but it requires a multicast network. It is not possible in my case. I have heard about JCS too. Has anybodyever used it?
Sorry, I don't have experience in this.
I don't find information to configure it with OJB. Can anybody help me ?
If you use OJB 1.0.5rc1 change the object-cache element within your jdbc-connection-descriptor to
one global cache region: <object-cache class="JCS"> </object-cache> a cache region for each class: <object-cache class="JCSPerClass"> </object-cache>For version 1.0.4 specifiy the full qualified class name (e.g. org.apache.ojb.broker.cache.ObjectCacheJCSPerClassImpl).
You can configure the JCS cache via the cache.ccf properties file. regards, Armin --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]