On 13/02/2009, at 4:43 PM, Tarik Cherkovi wrote:

 How are people getting around it if at all?Building
event propagation on the server would be great, but as you say, it's non trivial. So in the meantime, I would need to find another solution (other
than rewriting my entire swing gui in gwt...)  How would I refresh all
caches programmatically?  I ll try that and see what performance looks
like...

OK, so if you are running Swing, I guess all your clients are on different computers. But are they in the same network? Can the clients talk to each other? What security implications does this have?

The main problem you have is knowing when to refresh the data on each client. Would a periodic refresh be enough? Or do you need to send an event to the client? Can the server contact the client directly or does the client need to poll for changes?

What we do in our onCourse application is use a single 'shared' context for list views where data being out of date is not quite so critical. Then everytime a user double clicks to edit, we fetch fresh data from the server. Speed is really not bad at all. We can load a 100,000 record contact list (with paging) in 2-3 seconds across the network. Double clicking to edit is actually about the same speed, mainly because we fetch a hundred records from across a dozen different relations. Prefetching relations and paging data for list views are the two main things to keep the performance acceptable. You'll want to run 3.0M5 for prefetching to work well in ROP.


Ari Maniatis



-------------------------->
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001   fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A


Reply via email to