|
After developing using castor for a while, I become
more concerned about its performance, As far as I know:
1. Castor don't support the use of
preparedstatement, it always use statement to load a object by key
2. It is not able to dynamically control which
fields to be loaded initially or lazy-load a field. Though it support
lazy-loading a collection, it still needs to retrieve all the keys of the
collections.
3. So far no support for distributed
cache.
My application needs a high performance design, I
don't want to use EJB and other remote calls mechanisms, instead I will use the
load balance of app server and distributed object caches.
I am wondering whether it is possible to modify the
classdescriptor in the runtime, to disable the loading of unneeded fields, and
for collections, don't load the collection object's primary keys at all (the
collection may contain thousands of items), but load only when needed. Can
I do it in the runtime?
Say that for an user, it has following categoties
of info:
a. basic info: id, name,
b. extended info: home address
c. clob field: photo
d. collection: a long list of
friends
When retrieve a list of users, it only need to
retrieve the basic info; when view a specific user, it needs the extended info;
when you want to photo, it will get clob field. You certainly don't want to
get the friends until you want to view a specific user, and no need to
retrieve primary keys of friends collection, too.
Is it possible to do using Castor?
Thanks a lot,
John W
|
- Re: [castor-dev] Castor performance concern John Wang
- Re: [castor-dev] Castor performance concern Nathan Bronson
