Q:How can you start a JTA transaction from a Servlet deployed on JBoss ?
A: JBoss registers in the JNDI tree a JTA UserTransaction Object which can be user to manage
a distributed transaction
A: Basically starting JBoss with the all configuration contains everything needed for clustering:
It has all the libraries for clustering:
JGroups.jar, jboss-cache.jar
HA-JNDI
Farming
HA-JMS
A: The JGroups framework provides services to enable peer-to-peer communications between nodes in a
cluster. It is built on top a stack of network communication protocols that provide transport, discovery,
reliability and failure detection, and cluster membership management services.
Q:Is it possible to put a JBoss server instance into multiple cluster at the same
time ?
A: It is technically possible to put a JBoss server instance into multiple clusters at the same time, this
practice is generally not recommended, as it increases the management complexity.
A: Built on the standards JavaServer Faces and EJB 3.0, JBoss Seam unifies component and
programming models and delivers a consistent and powerful framework for rapid creation of
web applications with Java EE 5.0. Seam simplifies web application development and enables
new functionality that was difficult to implement by hand before, such as stateful
conversations, multi-window operation, and handling concurrent fine-grained AJAX requests.
Seam also unifies and integrates popular open source technologies like Facelets, Hibernate,
iText, and Lucene.
A: Seam runs beautifully on other application servers - just like everything else the Hibernate
team does, this is not a JBoss-only thing.
A: JBoss jBPM is a platform for process languages. At the base there is a java library to define and
execute graphs. The actual process constructs like e.g. send email, user task and update database are
defined on top of this. Every process language is made up of a set of such process constructs. And that is
what is pluggable in this base library. On top of the JBoss jBPM base library, there are implemented
several process languages as a set of process constructs: jPDL, BPEL and SEAM pageflow:
jPDL is a process language with a clean interface to Java and very sophisticated task management
capabilities. There is no standard for Java process languages, so it is proprietary.
BPEL is a service orchestration language. As said before, in BPEL, you can write new services as a
function of other services. This is typically a component of an Enterprise Service Bus (ESB).
SEAM pageflow is a language that allows for the graphically define the navigation between
pages in a SEAM web application.
A: The first step is to measure the different components of your app to see where the degradation is. Is it
an external resource (database, message server, etc.)? Is it internal? Where is the app spending all its
time?
So the first step could be to to use JBoss JMX agents and monitor the components deployed to the
application server. Once it's clear which component or library takes most of the time or most of resource
you can use a more specialized tool like JProbe and examine the single method or the single objects
loaded in memory.