Hi all there,
I have just a few questions about good app design with Jboss. Hope that
somebody can
give my some useful tips. I have to design a j2ee-application that
has the following requirements.
- high volume web-traffic
- security for member and admin area -> based on roles
- It must be possible to easily split the app in two parts (Jboss and
Webserver) to
run it on two different machines (3 with Db-Server).
This sounds quite normal. Here are my questions (mostly
performance-questions):
a) What is better performance if you have to handle a lot of db access.
A stateless session bean DBHandler that accesses the database via
the minerva pools or entity beans for the most important
parts (business objects) of the app?
b) A stateful session bean to store users session data or
a writing an normal object to an HttpSession that implements the
SessionListener (valueBound and unbound to store in database after
timeout
or invalidate)?
c) From the website (member-area) the jsp and servlets do read and write
data
out of and to the database. For reading data, I think, I can access the
entity beans (if used, see a)). For writing data should I update the
entity-bean/db directly
or send a JMS Message to a TopicSubscriber (MBean) and let that
subscriber's Listener
do the update on the entity bean/database.
d) The Jsp and servlets access only session and entity beans. To access them
I write
some Proxy Classes, so that if we split the webserver and jboss to two
different
machines only these proxies must be changed to work with the
PortableRemoteObject.
Right?
e) How to split the web-apps? I think this could be a good way:
- a ROOT package with all classes needed. + some servlets
- a admin package (admin-files) with the necessary security details for
the admin-area
- a member package (member-files) with form based auth.
Can I share classes across web-apps (e.g. SessionBeanProxies) by placing
them in web-inf/classes of
the root package and access from the admin and member packages. Or do I
have
to include the proxy-classes in the web-inf/classes of admin and(!)
member pack.
f) If we plan to use Jboss with a different webserver, or not In-JVM, we
have to take care
about the authentication of users by the webserver. If the webserver is
on a different
machine, we cannot use the Jboss integrated Login-Modules? Is that
right?
Maybe that are all stupid questions, but I cannot give me an answer to all
that myself, so I hope
somebody of you can give me a few tips.
Please remember that this app should be able to serve as-much-as-possible
web-clients.
(40k visitors / day)
Regards,
Reto
--
--------------------------------------------------------------
To subscribe: [EMAIL PROTECTED]
To unsubscribe: [EMAIL PROTECTED]
List Help?: [EMAIL PROTECTED]