Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

What is JBoss

JBoss is an open source J2EE-compliant application server specification, J2EE specification as a


supplement, Jboss AOP framework is introduced for ordinary Java class provides J2EE services without ha
follow the EJB specification. Jboss by class loading, use the Javassist bytecode operation of the dynamic A
framework, Javassist is an open source class library byte code editor.
Jboss of reference, the entry point and also to achieve by ordinary Java objects, and use the XML file
configuration. Jboss of AspectJ join point model and slightly different, providing a series of pre-defined
entry points, including the type matching, method calls, constructor calls, field visits, the specific
relationship between calling and called. Through these entry points of the logic operation, can achieve a mo
complex entry points. Respect for the Java class, reference is one way, does not contain terms starting poin
for a variety of aspects of the main interceptor (Interceptor), the interceptor shall contain only a
reference, the single connection point, multiple interceptors can be the formation of interceptor chain,
additional action interceptors. The method of interception by the Advisor class management, call interceptor
connection point turn, and finally call the method to be logical. And on the starting point, reference has
been and information on the AspectManager management. In addition, Jboss provide metadata support for
classes, methods, constructors and fields to add additional attributes, and can run on the visit.
To achieve interception, Jboss need to modify the class byte code, roughly as follows.
XML configuration files on the starting point, interceptors, metadata, and mixed type of information in the
application deployment time to be read into, analysis, and generate the appropriate object, instantiate the
object information managed by the AspectManager. Mixed area code needed when class loading, AspectM
create Advisor class, the context information passed to it, and modify the class byte code, followed by the
byte code will be modified to complete the class loader class load. Byte code modification is to be included
in the main class to add a number of ways that match the connection point for the proxy method calls,
constructor calls, field access and method of introduction, to the corresponding method on the Advisor Clas
of the call. The method of the class will be renamed, to retain the original method body, and add a method
with the original method of the same name, in this method call that agent method is used to call the agent to
the Advisor class, or rename the original method call. For the field visit, the two methods were added,
corresponding to read and write operations, the field agent to visit the Advisor class, visit the domain of
the class, you need to access the domain will be converted to the above method call. The constructor calls,
then add a method to call the agent to the Advisor Class, and the construction of structural object class cod
for the corresponding conversion. For import, the class will be added into a mixed class that implements the
reference, and add the mixed class interface methods will be mixed class method call agent to Advisor clas
and finally call the implementation of hybrid class. Related class loading, initialization Advisor class, fill
in the interceptor chain to complete the process.
1, JBoss Introduction
?In recent years, J2EE application servers, JBoss is the fastest growing application server. JBoss is free,
open source implementation of J2EE, which were released through the LGPL license, which makes JBoss i
popular. Boss is running the J2EE EJB application servers, such as: database access JDBC, transactions (
JTS), information system (JTS), naming mechanism (JNDI) and management support (JMX). It is the open
project, following the latest J2EE specification. The current release version 2.2.4, JBoss EJB 1.1 and some
achieved the standard EJB 2.0, JMS 1.0.1, Servlet 2.2, JSP 1.1, JMX 1.0, JNDI 1.0, JDBC 1.2 and 2.0 exte
(support connection pool (Connection Polling)) , JavaMail / JAF, JTA 1.0 and JAAS1.0 standards, JBoss is
pure Java implementation can run on any platform.
?Since the start from the JBoss project, which has grown from a EJB container into a J2EE-based operatin
system, a web (operating system for web), it embodies the latest technologies J2EE specification, and also
the JavaWorld Editors' Choice 2002 selection in the "Best Java Application Server&am
award. Whether learning or application, JBoss has provided us with a very good platform.
?In addition, JBoss application server also has many outstanding qualities:
It has a revolutionary JMX microkernel service as bus structure;
This in itself is service-oriented architecture (Service-Oriented Architecture, SOA);
It also has a unified class loader, which enables the application of hot deployment and hot unloading
capacity.
?Therefore, it is highly modular and loosely coupled. JBoss users to tell us positive feedback, JBoss
Application Server is a robust, high-quality, but also has good performance.

Second, JBoss development


?To meet the growing needs of the enterprise market, JBoss Inc. released since 2003 on a 24 * 7,
professional-level product support services. Meanwhile, to expand the enterprise market, JBoss, JBoss has
signed a number of channel partners. In June 2004, JBoss Inc., JBoss application server through the
Sun's J2EE certification. This is the history of JBoss application server by far the most important
milestone. At the same time, JBoss has been followed by the latest J2EE specification, and in some techno
to lead the development of J2EE specification. Therefore, whether in business or in the open source commu
JBoss, becoming the first J2EE 1.4 certified by the mainstream application server. Now, JBoss application
server has truly developed into an enterprise-strength (ie, support for mission critical grade applications)
and application servers.
?In recent years, Hibernate has become the de facto persistence engine. JBoss is committed to open-sour
project itself into the community, the latest version of the JBoss application server has to JMXMBean
Hibernate integration services. This allows users to directly use the application server environment
Hibernate, regardless of whether in the J2EE context. In the latest version of the JBoss application server,
users can access directly through JMXMBean services to the services provided by JBossCache. The next
generation of JBoss Application Server (tentatively named, JBoss5.0) will provide a lot of new features. In
addition to supporting the latest EJB 3.0 specification, the new version of the JBoss AOP will be officially
released with it. Meanwhile, JBoss development team also plans to develop new micro-kernel level, that is
independent of the JMX, so that it can be used independently.

3, JBoss server architecture overview


?The framework of JBoss and other J2EE application server architecture has a huge difference. Module JB
JMX architecture is built on the bottom, the next chart shows the major components and JBoss JMX connec

?JMX - level
JMX is a reusable framework, it is remote (Remote) and local (Local) extends the application of managem
tools. Its structure is layer-type structure. They realize layer (instrumentation layer), agent layer (agent
layer) and the release layer (distribution layer). Among them, the release layer is still waiting for future
standardization. Brief statement that users manage Bean, MBean to provide access to appropriate resource
achieve method. Implementation level to achieve the relevant characteristics of resources and it is publishe
in the JMX-related applications, it is the agent layer of control, and release the corresponding agent
registered in the MBeanServer the management of resources.
?
?JBoss main modules
JBoss main module is available on the MeanServer management MBean.
1.JBoss EJB container is the core of JBoss server implementation. It has two features, first produced in the
run-Stub and Skeleton EJB object class, the second is to support hot deployment.
2.JBossNS JBoss naming service is used to locate objects and resources. It implements the JNDI J2EE
specification.
3.JBossTX by the JTA / JTS transactions to support management control.
4. Deployment Support EJB (jar), Web application document (war), and enterprise applications, document
(ears) of the deployment. It always concerned about the situation J2EE application URL, once they are chan
or when there will be automatically deployed.
5.JBossMQ to Java Message Specification (JMS) implementation.
6.JBossSX support or not support based on JAAS JAAS security implementation mechanisms.
7.JBossCX realize some functions of JCA. JCA developed a J2EE application components to access the r
based on connections.
8.Web server supports Web container and the Servlet engine. JBoss 2.4.x version supports Tomcat 4.0.1,
Tomcat 3.23 and Jetty 3.x services.

4, JBoss architecture are two important features


?The first is to use JMX as a software bus vertical throughout its entire service, the new service
components through JMX specification to follow mount on the "bus", the expansion of
services to make the system easier. May be plug-in framework is widely used in the service implementation
Developers can choose the services they need and the preparation they need to achieve appropriate, by th
definition in the deployment descriptor file, so that JBoss server know.
Second, the container is designed to be dynamic proxy mechanism to enable the container to achieve suc
simple and allows developers to avoid the laborious pre-compiled jar file to get the stub and skeleton code.
But this potential issue is performance and scalability, because we know that java reflection mechanism will
lead to performance losses. JBoss exist in the corresponding optimization program and the research in the
future, we will discuss the optimization method to work when and how to work.

You might also like