jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Felix Meschberger <Felix.Meschber...@day.com>
Subject Re: JCR-RMI RangeIterator performance
Date Fri, 15 Apr 2005 18:14:18 GMT

Jukka Zitting schrieb:

> My design goal for JCR-RMI was to keep it as simple and 
> straightforward as possible while trying to minimize network traffic, 
> especially the amount of round-trips to the server. In many cases 
> reducing server round-trips requires separate caching, with associated 
> validity problems, but RangeIterators and Values can normally be 
> cached without problems (AFAIK).

You may be right, esp. regarding server round-trips, where even with a 
big number of items, server round-trip time might outnumber the time 
required to serialize/deserialize the iterator. So the performance 
problem I hit will be there no matter how the iterator is transferred, 
either it takes time in the server round-trips or in serialization. In 
most cases (around 95% or more) I do a full iteration.

> If this is a problem, it would be easy to create separate 
> RemoteRangeIterator interfaces as suggested by Felix. There could be 
> an optional  ClientRepository attribute that can be used for selecting 
> the desired iterator behaviour on the client side. Even better, the 
> server could dynamically decide whether to return an array or an 
> iterator based on the size of the underlying data set.

Without any exact numbers at hand, it is hard to tell, whether we gain 
something of this. So I suggest we leave it as is.


View raw message