Change Notification vs New EditingContext vs ?
Change Notification vs New EditingContext vs ?
- Subject: Change Notification vs New EditingContext vs ?
- From: Dov Rosenberg <email@hidden>
- Date: Thu, 20 Dec 2007 22:01:33 -0500
- Thread-topic: Change Notification vs New EditingContext vs ?
Title: Change Notification vs New EditingContext vs ?
We have been using a JMS based change notification framework (based on the Project Wonder code) and have started to notice more deadlocks and performance problems under higher load and more servers in the network. I think we have decided that an external change notification framework is just not going to be scalable enough for our needs.
We have been throwing around various strategies but I wanted to vet them to the greater WO community for assessment. Any feedback is appreciated.
Application Profile:
Our application is deployed as a servlet using a WAR file that gets expanded by the container (Tomcat 5.5). The app is currently built using WO 5.3 but we are in the process of converting it to WO 5.4. Our application is typically deployed in multiple tomcat instances across 1 or more machines in a network. We have an administration console, a web client (using EOF based custom JSP tag libs that we created), and a set of EOF based Apache Axis web services. The web client is primarily read only and makes extensive use of the SharedEditingContext. The web services client is basically stateless. The mgmt console is a typical WO/EOF application that uses the defaultEditingContext extensively. We have borrowed some Project Wonder components and adapted them to our needs but have not implemented the whole Project Wonder set of frameworks. Administration console users generate content that the web client and web services clients interact with.
Option 1:
Replace the session based defaultEditingContext in the mgmt console and create a new EC each time one is needed. Perhaps using the ERXEC instead of a regular EC. This would still leave us with the SharedEditingContext to deal with in the web app. The web app needs to see fresh data when it occurs, but short of replacing the shared EC with a new EC each time and doing a lot more DB fetches I am not sure how to maintain adequate performance.
Option 2:
Replace the standard EC and associated ObjectStoreCoordinator stuff with Project Wonder components (is there a Wonder SharedEditingContext?)
Option 3:
Come up with another strategy to deal with multi instance data synchronization.
Dov Rosenberg
_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden