YOUR FEEDBACK
Adobe Flex 2 - Answering Tough Questions About Enterprise Development
A Correct Person wrote: Denis Roebrt commented on the 21 Aug 2006 "Tough Que...
SOA World Conference
Virtualization Conference
$50 Savings Expire May 23, 2008... – Register Today!

2007 West
GOLD SPONSORS:
Active Endpoints
Your SOA Needs BPEL for Orchestration
BEA
Virtualized SOA: Adaptive Infrastructure for Demanding Applications
Nexaweb
Overcoming Bandwidth Challenges with Nexaweb
TIBCO
What is Service Virtualization?
SILVER SPONSORS:
WSO2
Using Web Services Technologies and FOSS Solutions
Click For 2007 East
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts

SYS-CON.TV
TOP THREE LINKS YOU MUST CLICK ON


New Deployment Model in BEA WebLogic Server 7.0

Digg This!

The release of BEA WebLogic Server 7.0 offered several new features such as Web services; a pluggable, flexible security infrastructure; a migratable framework; new developer tools; JMS; and a new deployment model to provide a highly reliable framework for scalable and secure applications.

In this article I'll talk about the deployment model introduced in WebLogic Server 7.0 and the different modes of application staging.

New Deployment Model
The new deployment model helps us prevent inconsistent deployment states across servers, especially clustered servers.

In previous versions of WebLogic Server, when an application was deployed, the admin server sent a copy of the application file(s) to all the targeted servers. The main problem with this approach is, if deployment of an application fails to any of these targeted servers, the entire deployment's state across its target servers became inconsistent. The second problem was, since the admin server copyied the files to managed servers upon their restart, server start-up was delayed as all the JSP's had to be compiled.

The new deployment model (aka "2 phase deployment protocol") was introduced to solve this problem in addition to maintaining domain consistency. In other words, this model ensures homogeneous application deployment in Clusters.

It also ensures better status reporting for success/failure of deployments. The WebLogic Server 6.x deployment style will continue to work as is; however, you are strongly encouraged to use the new deployment model as it is highly flexible and rich in terms of its new features:

  • Consistent deployment states for clusters: If an application targeted to a cluster fails on any of the cluster members in the prepare phase or in the activate phase, the application is not activated on any of the cluster members. This helps to ensure that the cluster is kept homogeneous.
  • Application ordering: At server startup, you set the order of application activations.
  • Improved API: A simple API separates configuration from the actual deployment operations. When a deployment is requested, this API will create the necessary configuration (MBeans) for you.
  • Deployment status: It is now easier to track the progress of a deployment, especially when it has multiple targets.

    Now let's talk about the phases in the new deployment model.

  • Prepare Phase (also known as first phase): The container prepares the application across all target servers. The container distributes or copies files and prepares the application and its components for activation, validating them and performing error checks on them. The purpose of the prepare phase is to ensure that the application and its components are in a state in which they can be reliably deployed.
  • Activation Phase (also known as second phase): The actual deployment of the application or activation is done in this phase. After it is completed, the application is made available to clients.

    If deployment of an application fails in either the prepare or activation phase, then the cluster deployment will fail. In the case of a non-cluster environment, the application won't be prepared or activated.

    Application Staging
    To efficiently support Content Management Providers, WebLogic Server 7.0 introduced several staging modes, described below.

    Nostage
    You do not need to copy application files to another location. A server in nostage mode will run applications deployed to it directly from their source directories. For example:

    java weblogic. Deployer url {admin-url}
    -username {admin-user} -activate -nostage
    -source c:/myapps/myapp.ear -targets managed-server1
    -password {admin-password}

    This command activates the EAR specified with the name myapp. The application is deployed to the targeted server, which in this case is called managed-server1.

    The -nostage option indicates that the application path "c:/myapps" is available on all of the servers in the domain and that it is not necessary to "stage" or transfer the files to the managed servers (e.g., shared file system).

    This staging mode may not be helpful if admin & managed servers are in different machines or in different Operating Systems.

    Stage
    The stage mode copies application files to servers targeted in deployment phase. This means that the application will automatically be copied to the staging directory on the server. The servers will initialize and run the application from this directory.

    java weblogic.Deployer url {admin-url} -username
    {admin-user} -password {admin-password} -activate -stage
    -source c:/myapps/myapp.ear -targets managed-server1

    This command activates the EAR specified with the name myapp. The application is deployed to the targeted server, which in this case is called managed-server1.

    The -stage option indicates that the application files are copied from -source directory to a directory with the application name under each target server's staging directory.

    External_stage
    The administrator manually copies files to the server's staging directory. In the external stage mode, the application will be run from a staging directory to which an external entity is expected to distribute the files. (e.g., CMP's)

    java weblogic.Deployer url {admin-url} -username {admin-user}
    -password {admin-password} -activate -external_stage
    -source C:/myapp/myapp.ear -targets managed-server1, managed-server2

    This command activates the EAR specified with the name myapp. The application is deployed to the targeted server, which in this case is called managed-server1.

    The -external_stage option indicates that the application files expect to be copied under each target server's staging directory.

    Default Staging modes
    For Admin servers, the default is "nostage". For Managed Servers, the default is "stage".

    The staging directory for each server is located under $WL_HOME/user_projects/mydomain/{server_name}/stage

    Available Deployment Tools for Two-Phase Deployment
    WebLogic Server 7.0 provides the following deployment tools to deploy applications using the two-phase deployment model:

    1. weblogic.Deployer command line utility
    2. WLS admin console
    3. WebLogic Builder
    4. Deployment via applications folder
    Conclusion
    In this article we looked at the new deployment model introduced in WebLogic Server 7.0, which ensures homogeneous deployments in a clustered environment. I hope this will help you choose the appropriate staging mode depending on your deployment needs.

    References

  • http://e-docs.bea.com/wls/docs70/programming/deploying.html
  • java weblogic. Deployer - examples: http://e-docs.bea.com/wls/docs70/faq/deploy.html#733195
    About Kumar Allamraju
    Kumar Allamraju is a Sr. Developer Relations Engineer at BEA Systems in WebLogic server support division based in San Francisco. Kumar has 5 yrs of experience in object oriented programming and in J2EE related technologies. He has a Bachelors degree in Computer Science

  • BEA WEBLOGIC LATEST STORIES
    3rd International Virtualization Conference & Expo: Themes & Topics
    From Application Virtualization to Xen, a round-up of the virtualization themes & topics being discussed in NYC June 23-24, 2008 by the world-class speaker faculty at the 3rd International Virtualization Conference & Expo being held by SYS-CON Events in The Roosevelt Hotel, in midtown
    Microsoft To Keynote 4th International Virtualization Conference & Expo
    Mike Neil is general manager for virtualization strategy in the Windows Server Division at Microsoft. Mike is focused on the delivery of the Windows virtualization technology, including Windows Server 2008 Hyper-V, Microsoft Hyper-V Server and Virtual PC 2007. Mike also directs the tec
    Virtualization Meets DaaS - Desktop-as-a-Service
    After a $1.5 million angel round, Desktone, which was started in 2006 by Eric Pulier, who also started SOA Software, US Interactive and IVT, picked up $17 million in first-round funding about a year ago from Highland Capital Partners, SoftBank Capital, Citrix Systems and the China-base
    Engelbart's Usability Dilemma: Efficiency vs Ease-of-Use
    The mouse was the original idea of Doug Engelbart who was the head of the Augmentation Research Center (ARC) at Stanford Research Institute. Engelbart's philosophy is best embodied, in my opinion, in the design of another device that he invented, the five-finger keyboard - with keys li
    Web 2.0 Is Fundamentally About Empowering People
    'Unlocking content to be remixed into new business value' is the driver of Web 2.0 in the enterprise, says Rod Smith, IBM VP of Emerging Internet Technologies, in this Exclusive Q&A with Jeremy Geelan on the occasion of IBM's release of a new technology created by IBM researchers, code
    Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
    Here is a question that I have been pondering on and off for quite a while: Why do 'cool kids' choose Ruby or PHP to build websites instead of Java? I have to admit that I do not have an answer. Why do I even care? Because I am a Java developer. Like many Java developers, I get along w
    SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
    SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
    Click to Add our RSS Feeds to the Service of Your Choice:
    Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
    myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
    Publish Your Article! Please send it to editorial(at)sys-con.com!

    Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021

    SYS-CON FEATURED WHITEPAPERS

    MOST READ THIS WEEK
    ADS BY GOOGLE
    BREAKING NEWS FROM THE WIRES
    AmberPoint Extends SOA Governance to Apache ServiceMix, BEA AquaLogic Service Bus 3.0, BEA WebLogic Integration, Cisco ACE XML Gateway, JBoss Enterprise Application Platform and Oracle Fusion
    AmberPoint announced today that it has extended the reach of its runtime SOA governance