Re: j2ee architecture advice needed

From: iksrazal (iksrazal_at_terra.com.br)
Date: 08/02/04


Date: 2 Aug 2004 06:16:45 -0700

nt3@duke.edu (Nikita Tovstoles) wrote in message news:<ff1e34a6.0407311555.5101bf06@posting.google.com>...
> Hi,
>
> I am about to design and implement a java-based product-quality
> (already have a working proof-of-concept) web service with the
> following components:
>
> -ejb (session+entity) back end talking to a mysql db

By default, MySQL tables are not transactional. EJB is all about
transactions. Transaction support in mysql has only come about in the
last year or so, and the reviews are mixed.

You might want to look at the upcomming EJB 2.1 Web Services, already
available in some app servers.

> -web client (browser) using servlets (possibly also JSF) to access
> session ejb.

JSF is really new - last I looked there still was not a working
implementation. I'd avoid it for now. Be sure to use value objects (or
data transfer objects as they are now called).

> -j2me personal profile client (using soap to talk to the back end)
> (PDA client)
>
> While this service is not an online store, i suppose the design and
> requirements would be somewhat similar: personalized, scalable, secure
> and reliable. DB queries will be small in size (2-250k, vast majority
> 2-50k) but frequent. as with many personalized online services, users
> will have accounts which they will create themselves. Scalability will
> be important (potentially into several million users, though initially
> no more than 10,000), so some form of clustering will probably be
> needed.
>
> Here's where i need some advice:
>
> -should i utilize LDAP to store and access user information (e-mail,
> address, and encrypted passwords) or should i just these as columns to
> a table in my DB schema? what would be advantages of each approach?
>

LDAP is a good choice for data that is vastly read-only - the
performance is much better. The InetOrgPerson schema supports all
those requirements like a glove. The disadvantage is that there is
another piece to maintain, and ldap/java programming will take a few
days to get up to speed.

> -where should i store session information? specifically: currently i
> utilize stateless session beans, so session info is stored:
> -in servlet's HttpSession when service is accessed through browser
> -in Personal Profile application, when service is accessed via PDA
> It seems to me this way i reduce load on the app server as well as
> network traffic (in PDA's case). Would storing session info in a
> stateful session bean be any better? Why?
>

There's no standard way to do this - nost unfortunately _still_ not in
the spec.
 
>
> thank you very much,
>
> -nikita
> ps. any to the point literature on end-to-end java-based architectures
> (online or printed)?

HTH,
iksrazal
http://www.braziloutsource.com/



Relevant Pages

  • Re: Is there a BEA Tuxedo equivalence in Java?
    ... >> that scales well and handles hi volume transactions. ... I think you need EJB. ... A lot depends on the type of messaging you need. ... I think web services are pretty neat but there is a lot of overhead. ...
    (comp.object)
  • HttpSession wird immer wieder neu erzeugt!
    ... Ich arbeite gerade mit JSP und EJB 3.0. ... Kennt jemand das Problem? ... besorgt und diese Ihnen in den JSP Seiten (im Request und Session ... Jboss integrierte Tomcat. ...
    (de.comp.lang.java)
  • HttpSession wird immer wieder neu erzeugt!! HELFT MIR BITTE!!!
    ... Ich arbeite gerade mit JSP und EJB 3.0. ... Kennt jemand das Problem? ... besorgt und diese Ihnen in den JSP Seiten (im Request und Session ... Jboss integrierte Tomcat. ...
    (comp.lang.java.programmer)
  • Container-managed Transactions scope
    ... Updates and Deletes are inside an EJB method. ... the Container-managed Transactions be extended to the DAOs automatically. ... If container do keep track of transactions like that then how many nested ...
    (comp.lang.java.programmer)
  • Re: Container-managed Transactions scope
    ... Updates and Deletes are inside an EJB method. ... > the Container-managed Transactions be extended to the DAOs automatically. ... > If container do keep track of transactions like that then how many nested ...
    (comp.lang.java.programmer)