Weblogic Clustering Advantages

WebLogic clustering offers three important benefits:

1. Scalability:
The capacity of an application deployed on a WebLogic Server cluster can be increased dynamically to meet demand. You can add server instances to a cluster without interruption of service — the application continues to run without impact to clients and end users.

2. Load balancing:
The ability to distribute requests across all members of the cluster, according tothe workload on each server.

3. High availability:
A mix of features that ensure applications and services are available even if aserver or machine fails. Clients can continue to work with little or no disruption ina highly available environment. WebLogic achieves high availability using acombination of features: replication, failover, and migratable services.

Weblogic Server Basic Components

A Weblogic server domain is an administrative grouping of servers and/or clusters. You configure, manage, monitor the domain from central location; this central location is the administration (admin) server.

Admin Server:
Admin server is just a Weblogic Server instance which maintains a repository of configuration information for the domain. Admin server acts as a centralized application deployment server which provides browser based admin console for configure, manage and monitor all aspects of the domain.

Managed Server:
A Managed server is a term for any other server in the domain other than the admin server. Managed Servers host the components and associated resources that constitute your applications - for example, JSPs and EJBs. When a Managed Server starts up, it connects to the domain's Administration Server to obtain configuration and deployment settings.

Two or more Managed Servers can be configured as a WebLogic Server cluster (more about this in next blog) to increase application scalability and availability. In a WebLogic Server cluster, most resources and services are deployed to each Managed Server (as opposed to a single Managed Server,) enabling failover and load balancing.

Node Manager:

Node Manager is a Java utility that runs as separate process from WebLogic Server and allows you to perform common operations tasks for a Managed Server, regardless of its location with respect to its Administration Server. While use of Node Manager is optional, it provides valuable benefits if your WebLogic Server environment hosts applications with high availability requirements.

If you run Node Manager on a machine that hosts Managed Servers, you can start and stop the Managed Servers remotely using the Administration Console or from the command line. Node Manager can also automatically restart a Managed Server after an unexpected failure.

WebLogic Server Cluster:
A WebLogic Server cluster consists of multiple WebLogic Server server instances running simultaneously and working together to provide increased scalability and reliability. A cluster appears to clients to be a single WebLogic Server instance. The server instances that constitute a cluster can run on the same machine, or be located on different machines. You can increase a cluster's capacity by adding additional server instances to the cluster on an existing machine, or you can add machines to the cluster to host the incremental server instances. Each server instance in a cluster must run the same version of WebLogic Server.

How Does a Cluster Relate to a Domain?
A cluster is part of a particular WebLogic Server domain.
A domain is an interrelated set of WebLogic Server resources that are managed as a unit. A domain includes one or more WebLogic Server instances, which can be clustered, non-clustered, or a combination of clustered and non-clustered instances. A domain can include multiple clusters. A domain also contains the application components deployed in the domain, and the resources and services required by those application components and the server instances in the domain.

Useful links:

More articles on Weblogic
More articles on Weblogic Portal
Weblogic Portal Interview questions

How to make application deployed in weblogic as default web application?

The default Web Application is presented to clients who do not specify a URI (or specify "/" as the URI). To deploy a Web Application as a default Web Application, set the value of the context-root element to "/" in its deployment descriptor.You can specify the context-root element in the weblogic.xml deployment descriptor for Web Applications that are packaged as a .war archive or exploded .war directory.
If you package the Web Application as part of an Enterprise Application (.ear archive or exploded .ear), specify the context-root in application.xml. Note that the application.xml context-root takes precedent over the weblogic.xml value.
To test this:
Enter the URL in the browser after successfully configured as explianed above:
P.S: No need to mention the application name after /.

How to configure Apache plug-in with Weblogic10.3

Assume that you have downloaded and installed weblogic server. You want to install apache plug-in so that you can avoid port number when accessing the deployed applications.

The steps given below should work for apache 2.x.

Here we go:

1. Download the apache server plug in for weblogic from http://download.oracle.com/otn/bea/weblogic/server103/WLSWebServerPlugins1.0.1150354-Apache.zip

2. Extract the zip file into your hard disk.

3. Make sure you have necessary modules in the extracted zip folder.
For eg: mod_wl_220.so under windows folder

4. Verify that plug-in mod_so.c is enabled by typing the following command.
$APACHE_HOME \bin\apachetl –l (Unix/linux)
$APACHE_HOME \bin\httpd –l (windows)

Where APACHE_HOME is the directory containing your Apache HTTP Server installation.
This lists all enabled modules. If mod_so.c is not listed, you must rebuild apache server to have it enabled.

5. Install the Apache HTTP Server Plug-In module for Apache 2.0.x by copying the mod_wl_22.so file to the $APACHE_HOME\modules directory.

6. Add the following line to your APACHE_HOME/conf/httpd.conf file manually:
LoadModule weblogic_module modules/mod_wl_22.so

7. Modify the ServerName as your machine ip address.

8. Add the following lines:
    <IfModule mod_weblogic.c>
      WebLogicHost ip_address
      WebLogicPort 7001
      MatchExpression *.jsp
      Debug ALL
      DebugConfigInfo       On 
      KeepAliveEnabled ON 
      KeepAliveSecs  15
    <Location /web-app_name>
      SetHandler weblogic-handler 

10. Verify the syntax of the httpd.conf file with the following command:
$APACHE_HOME\bin\apachectl -t
The output of this command reports any errors in your httpd.conf file or returns:
Syntax OK

11. Re-start Apache server.

12. Test everything by hitting the URL below in the browser:

Hope the above information helps. If you have a requirement of configuring Apache with multiple weblogic server instances running in same box (non-clustered environment) with different port numbers, please follow this blog entry for the steps.
Please feel free to ask me if you have any questions.

What is portal?

When I was asked what do I do for living? I say I am portal consultant. blah..blah. Then comes the interesting question from the person who asked - What is it?

Well, a portal offers a single point of personalized, unified access to applications, content, processes. A portal delivers integrated content and applications, plus offers a unified, collaborative workplace. A portal is a web site that has many features than typical website. For eg, When I say Yahoo! what comes to your mind immediately? Yahoo home page has got small small multiple windows typically called portlets (tell about this in a bit). Each portlet for different purpose - stock, weather, news, search, etc, etc. They are contents from different external sources into single window. To know more about portal and its flavors in weblogic, please visit this blog entry.

Not only it stops here :)
Portals can provide valuable service functions such as security, search, collaboration, and work flow.
To name a few of Portals features - authentication, personalization, customization and content aggregation.

Authentication: - Typical website may not have authentication. You can see all contents. But portal provides facility of Logging-In. Provides you with information based on who you are.

Personalization: Limited, focused content. Eliminates the need to visit many different sites. e.g.You type in your user name and password and see your yahoo mail only.

Customization: This is the one of the powerful features of portal. You can organize which contents you want to access/see. If you go to my.yahoo.com or igoogle.com you can personlized what do you want to see. But in Website contents are not customizable. All content is there for every visitor. All are public contents.

Content aggregation: Portals can provide lot of contents collected from various sources under a single desktop. These contents can be secured and non-secured. Also portals can show specific contents to specific set of users based on the their entitlements (security).

What are Portlets?
Portlets are basic building blocks of portal. Portlets are web based java applications that can interact with the user. It can generate dynamic web contents.There are many types of portlets. More info on upcoming posts...

A web page can have any number of portlets.

P.S: To know more technical information about portals and its flavors, please visit this blog entry.