The problem in general is the EntityBeans have a rather heavy footprint
(Home/Remote/Impl, pass by value semantics, activation, deactivation,
finders...). Using them to represent fine grained objects will cause a drag
on system performance.

There is a lot on Entity Bean granularity in the achives.

-Chris.

> -----Original Message-----
> From: Craig McMurtry [SMTP:[EMAIL PROTECTED]]
> Sent: Monday, January 24, 2000 2:02 PM
> To:   [EMAIL PROTECTED]
> Subject:      Re: Entity beans referencing other entity beans
>
> Chris:
>
> If I understand correctly, then Erik is proposing to use a network of
> container-managed persistence entity beans to facilitate data access,
> primarily
> because of the ease of implementation (portability would be another
> reason), and
> you are saying that the proposed approach will not be scalable and would
> generally perform poorly.  Now, I understand that the data access code
> generated
> by the container will hardly be optimal, but I would be grateful for some
> more
> insight into how scalability would be compromised.  Let's take the
> following
> scenario as an example:
>
> Table/Entity: Users.  Fields: Person Key (primary key, foreign key of
> Persons
> table), User Name, Password
> Table/Entity: Persons.  Fields: Person Key (primary key), First Name, Last
> Name,
> Residential Location Key (foreign key of Locations table), Mailing
> Location Key
> (foreign key of Locations table)
> Table/Entity: Locations.  Fields . . .
>
> If a session component needs to get the first and last names of a user who
> has
> provided a first and last name, then it could cause a User entity to load,
> which
> would cause, in turn, a Person entity to load, as well as a location
> entity --
> clearly, all these entities lurching to life and accessing the data store
> is
> going to slow things down and cause a traffic jam to the data store which
> will
> adversely effect scalability.  Would a satisfactory compromise solution
> (other
> than the lazy-loading mechanism that has already been suggested in this
> thread)
> be to have the session component get the key of person from the User
> entity and
> then get the first and last names by doing a findbyPrimaryKey on a Person
> entity
> -- thereby only invoking the Person entity because it needed to in that
> case.
> This would not be as efficient as using a query that would retrieve the
> first
> and last name of a person from the Person table given a user name and
> password
> combination in the User table, but could still be accomplished with
> container-managed persistence.  I see a performance cost to the benefit of
> ease
> and portability in that scenario but not a scalability problem.  Or am I
> missing
> something?
>
> Regards,
> Craig
>
>
>
>
>
>
> Chris Raber <[EMAIL PROTECTED]> on 01/24/2000 11:18:12 AM
>
> Please respond to A mailing list for Enterprise JavaBeans development
>       <[EMAIL PROTECTED]>
>
> To:   [EMAIL PROTECTED]
> cc:
> Subject:  Re: Entity beans referencing other entity beans
>
>
>
> Erik said:
>         Yes that is very true, but... Using WLS and using CMP (which is a
> very
>         simple member to column mapping solution) Its very fast and easy
> to
> create.
>         In fact reading  a DBs schema info and generating a whole CRUD
> enabled
>         application is possible. So instead of doing BMP as you have I
> wan't
> to use
>         CMP and one table is one entity.
>         And as I said I know the implication and that its not a very nice
> component
>         design but I can write 20 entity beans when you have done 1.
>
>         Its as you said a question of fine- versus coarse grained design.
> It
> is
>         fine grained and that's how its going to be.
>
>
> Yes, but using this approach you are assured of an system that won't scale
> and won't perform. It was easy to build, but how far can you go with it? I
> suppose if you know at the outset that you don't have to scale, this is
> not
> an issue.
>
> -Chris.
>
> ==========================================================================
> =
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
> body
> of the message "signoff EJB-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".
>
>
>
>
>
>
>
> ----------------------------------------------------------------
>       The information transmitted is intended only for the person or
> entity to
>       which it is addressed and may contain confidential and/or privileged
>       material.  Any review, retransmission, dissemination or other use
> of, or
>       taking of any action in reliance upon, this information by persons
> or
>       entities other than the intended recipient is prohibited.   If you
>       received this in error, please contact the sender and delete the
> material
>       from any computer.
>
> ==========================================================================
> =
> To unsubscribe, send email to [EMAIL PROTECTED] and include in the
> body
> of the message "signoff EJB-INTEREST".  For general help, send email to
> [EMAIL PROTECTED] and include in the body of the message "help".

===========================================================================
To unsubscribe, send email to [EMAIL PROTECTED] and include in the body
of the message "signoff EJB-INTEREST".  For general help, send email to
[EMAIL PROTECTED] and include in the body of the message "help".

Reply via email to