The Differences Between JBoss EAP 5 and EAP 6
The Differences Between JBoss EAP 5 and EAP 6
The Differences Between JBoss EAP 5 and EAP 6
More
Next Blog
Create Blog
Sign In
7 March 2013
Posts Comments
In Part One of this series on JBoss (available here : http://blog.c2b2.co.uk/2013/01/setting-up-jboss-eap-5-cluster-with.html) I looked at setting up a basic two-node cluster with JBoss EAP 5 and load balancing using mod_jk. In Part Two (available here : http://blog.c2b2.co.uk/2013/02/preparing-jboss-system-for-production.html) I looked at things to consider when moving into a production environment. In Part Three (available here : http://blog.c2b2.co.uk/2013/02/setting-up-jboss-eap-6-cluster-with.html) I looked at setting up the same two node cluster as in part one of the series but using EAP 6 instead of 5. In this final part I will look at some of the key differences between EAP 5 and EAP 6.
java
(31)
jboss
(22)
middleware (20) JEE (19) oracle (17) data grids (16) glassfish (16) weblogic (14) Infinispan (9) Apache
(8) JBoss EAP 6 (8) coherence (8) big data (6) Application server (5) Tomcat (5) HornetQ (4) Active MQ (3) Camel (3)
WildFly (3) Drools (2) EAP 6 (2)
Popular Posts
JBoss EAP 6 as light as Raspberry PI? JBoss EAP 6 JEE != Heavy! There has been a lot of debate about JEE application servers being "heavy-weight" . However I&#... Configuring and Testing a WebLogic Cluster Configuring and Testing a WebLogic Cluster: This article describes how to configure and test a cluster of servers using WebLogic 10.3 and A... The Differences Between JBoss EAP 5
pdfcrowd.com
here. Four server configs are provided or you can create your own. The following are provided: standalone.xml - Support of Java EE Web-Profile plus some extensions like RESTFul Web Services and support for EJB3 remote invocations standalone-full.xml - Support of Java EE Full-Profile and all server capabilities without clustering standalone-ha.xml - Default profile with clustering capabilities standalone-full-ha.xml - Full profile with clustering capabilities
and EAP 6 Introduction This is part four in a series of blogs looking at JBoss EAP 5 and 6. In Part One of this series on JBoss (available here : h... A Smartphone as a JEE Server: Glassfish 4 on Ubuntu Touch Last year, following the release of the much anticipated Raspberry Pi, Steve couldnt resist getting JBoss EAP 6 to run on it, which he mana... Basic clustering with Weblogic 12c and Apache Web Server The aim of this post is to demonstrate Weblogics clustering capabilities and to use the Weblogic Apache plugin to use the Apache Web Server...
Starting up
In EAP 5 server start-up was done using the run.sh or run.bat scripts. In EAP 6 there are two startup scripts, one for starting a standalone server and another for starting in domain mode. These can be found in the bin directory. In 5 we would pass in a server configuration with the argument -c servername, where servername was the name of a configuration directory found in JBOSS_HOME/server. In 6, when running in standalone mode we pass in a server configuration file using the argument -server-config=configfile, where configfile is the name of an XML config file found in JBOSS_HOME/standalone/configuration.
Boot process
In previous versions of JBoss all services were loaded up on boot and it was generally the case that you had to strip down and remove unwanted services from JBoss out of the box. In EAP 6 this has changed so all non-essential services are lazily loaded. This results in a much quicker start-up time and reduced memory consumption. However in a live environment you may see slowdown when an app starts first time as it will have to load all the necessary services. In order to take advantage of multi-core processors services are now started concurrently.
C2B2 Tw itter
Tweets by @c2b2consulting
Blog Archive
Classloading
Classloading in EAP 6 is handled very differently than in 5. It is based on modules that have to define explicit dependencies on other modules. Deployments in EAP 6 are also modules. Modules do not have access to classes in jars in the application server unless an explicit dependency on those classes is defined. If you look under the JBOSS_HOME/modules directory you will find multiple directories. At the lowest level they each contain a module.xml file and any jar files used by that module. The module.xml file lists the other modules a module depends on, the resources it uses and it's properties. There is a JBoss specific deployment descriptor jboss-deployment-structure.xml that can be used to control class loading in a fine grained manner. It should be placed in the top level deployment, in META-INF (or WEB-INF for web deployments). In EAP 5, you controlled the order of deployments within an EAR through the use of the jboss-app.xml file.
May ( 3 ) April ( 5 ) March ( 7 ) Creating a Simple Cluster with Glassfish JBoss community and EAP are things changing? C2B2 is exhibiting at Europe's No.1 Information Se... A Smartphone as a JEE Server: Glassfish 4 on Ubunt... Detecting, Diagnosing and Fixing Performance Issue... The Differences Between JBoss EAP 5 and EAP 6
pdfcrowd.com
EAP 6 is the first version of JBoss to support the Java EE6 standard. The Java EE6 specification provides an <initialize-in-order> element in the application.xml which allows control of the order in which the Java EE modules within an EAR are deployed. Classes are also loaded concurrently for improved performance and to take advantage of multi-core processors.
EAP 5 and EAP 6 MIDDLEWARE INSIGHT - C2B2 Newsletter Issue 5 February ( 5 ) January ( 3 )
pdfcrowd.com
A profile is a named set of subsystem configurations. A standalone server runs a single profile whereas a managed domain can have many profiles available, with different servers running different profiles. EAP 6 includes four preconfigured profiles when running in domain mode. These match the four standalone configurations: default Support of Java EE Web-Profile plus some extensions like RESTFul Web Services or support for EJB3 remote invocations full Support of Java EE Full-Profile and all server capabilities without clustering ha default profile with clustering capabilities full-ha full profile with clustering capabilities
www.c2b2.co.uk Disclaimer
pdfcrowd.com
The views and opinions expressed on this b log are those of the authors and do not necessarily represent the views and opinions of C2B2 Consulting Ltd.
A domain can consist of multiple physical or virtual hosts. Each host has a host controller that is responsible for managing the life-cycle of the servers on each host. Each domain has one domain controller for centralised management tasks. This can be one of the host controllers or a dedicated instance (as above). The domain controller interacts with the host controllers to manage the server instances. The controller and the server instances of each host are separate JVM processes. There is also a single process controller on each host which is responsible for creating host and server processes and monitoring their life-cycle. If the host controller process crashes, the process controller will start up the host controller and each server that is configured with the auto-start parameter. However, if a server process is terminated unexpectedly, the process controller will not restart the server instance automatically. The idea of server groups is that all servers of the same server group, perform the same tasks. When you deploy an application you will not deploy it to a server, you will deploy it to a whole server group. Domain mode is completely independent from clustering. It does however provide features for managing clustered environments such as rolling deployment to a set of servers or rolling a config change out to a set of servers. You can start, pause and stop servers from one single console and that makes life easier for handling clustered environments. Note - There is no hot deploy in domain mode - you will need to use the command line or console.
Clustering
EAP 5 used JBoss Cache whereas EAP 6 uses Infinispan as the distributed cache technology on which clustering services are built. To transmit replicated data between the cluster nodes, Infinispan uses JGroups as the underlying subsystem. There are two protocol stacks used for reliable communication in a group of nodes. A UDP based protocol stack utilising multicast and a TCP based protocol stack for environments that do not support multicast communication. UDP is the default protocol stack in JBoss
pdfcrowd.com
EAP 6. EAP 6 comes with four preconfigured cache containers for replication between the cluster nodes. These can be found in the standard haprofile (in domain mode) or standalone-ha.xml or standalone-ha-full.xml (in standalone mode): Web - distributing and caching web-sessions over the cluster EJB - distributing and caching stateful-session-beans over the cluster Hibernate - 2nd level cache for hibernate Cluster - distribution of some general objects over the cluster
JMS
EAP 5 utilised JBoss Messaging as the default JMS implementation. JBoss Messaging is no longer included in EAP 6. HornetQ is now the default JMS implementation. If your application uses JBoss Messaging as the messaging provider, you will need to make changes to your application to use HornetQ. You will also need to migrate your existing messages from the JBoss Messaging database into the HornetQ journal. As with other things in EAP 6 configuration is now done in the standalone.xml or domain.xml files.
Management Interfaces
Finally I will take a quick look at changes to the management interfaces. In EAP 5 you had the admin console, the JMX console, the web console and the twiddle script. In EAP 6 everything is now consolidated into a new management console. This is available at hostname:9990/console by default. There is also a new command line interface. This can be used by running jboss-cli.sh from the bin directory. The CLI provides two types of commands: High-level: convenience commands for common tasks start-up, shut-down, deploy etc. Low-level: provide resource address, operation name & parameters & you can invoke any operation on any resource Typing help at the command line will give you a list of commands.
Summary
EAP 6 is a huge overhaul of JBoss and is certainly an improvement over EAP 5. The addition of the new domain mode allowing for central management of enterprise wide servers is long overdue and is a welcome addition.
pdfcrowd.com
Configuration is now much simpler than in previous editions with all configuration now contained in one file rather than being spread about in multiple often hard to find config files. The new boot process where only core services are started is another welcome addition meaning a fresh install doesn't require you to then strip out all the unwanted services. It also means a much faster boot time and lower memory consumption. Hopefully this blog series has given you an insight into some of the changes that have taken place from EAP 5 to EAP 6. If you have any questions regarding anything in any of the blogs please feel free to ask and I will do my best to answer them. Andy Overton Senior Managed Services Consultant C2B2
Labels: Application server , boot process , clustering , configuration , differences , domain , EAP 5 , EAP 6 , EAP5 , EAP6 , jboss , standalone
Home
Older Post
pdfcrowd.com
C2B2 on LinkedIn
See how your LinkedIn network connects you to C2B2 Consulting Limited.
In Your Network
powered by
pdfcrowd.com