In-Depth: Load-Balancing E-Business Suite Environments

As I watched blood drain from my arm, my thoughts turned to load-balancing and system redundancy.  My phlebotomist had just cheerfully informed me the lab's primary testing PC had failed that morning, so there would be an unusual delay in getting blood test results until a replacement arrived.


Increasing Fault Tolerance at Lower Cost

You can use load-balancing routers (LBRs) to protect your E-Business Suite from similar types of system failures.  Load-balancers increase your environment's fault-tolerance and scalability by distributing load across a pool of application servers like this:

Generic Apps Load-balancing:

Besides fault-tolerance and scalability, another appealing benefit is that you can use load-balancing to substitute expensive SMP boxes with clusters of inexpensive Linux-based commodity servers. 

Linux Load-Balancing on Oracle's Global Single Instance

In fact, this is what we've done at Oracle:  our own E-Business Suite environment is a Global Single Instance running on about 58 Linux-based application servers.  This has reportedly saved us millions in operating costs. 

If you're joining us at this year's OpenWorld conference, make sure you attend Bret Fuller's ever-popular session on how we run the E-Business Suite internally; some of the statistics he shows on our transactional volumes are mind-blowing.

Supported Load-Balancing Methods

The E-Business Suite supports the following types of load-balancing:
I'll cover only the first two methods in this article.

HTTP Layer Load-Balancing

HTTP Layer load-balancing is the most common method used in E-Business Suite environments. 

HTTP Layer Load-Balancing:

In this configuration, end-users navigate to a specific Web Entry Point that represents your E-Business Suite's domain name.  An HTTP Layer load-balancer routes all subsequent traffic for a specific user to a specific Web Node.

HTTP Layer load-balancers may use heartbeat checks for node death detection and restart, and sophisticated algorithms for load-balancing.

DNS-Based Load-Balancing

When an end-user's browser attempts to access your E-Business Suite environment, your local Domain Name Server (DNS) can direct that user to a specific application server in a pool based on available capacity:

DNS-Based Load-balancing:

Traffic for that user's session will be handled by the application server 10.10.10.10, while other users' traffic may be directed to other application servers in the pool.  Like HTTP layer load-balancers, many DNS-based load-balancers use heartbeat checks against nodes and sophisticated algorithms for load-balancing.

Business Continuity ("Disaster Recovery")

Our larger enterprise-class customers combine DNS-based and HTTP layer load-balancers to support their business continuity plans.  In the event of a disaster, end-users are directed via a DNS-based load-balancer from the primary E-Business Suite environment to an offsite standby site.

Disaster Recovery using DNS + HTTP LBRs:

Minimum Requirement:  Session Persistence

Remember that although Oracle doesn't certify specific load-balancers or networking hardware with the E-Business Suite, we do support their use generically. 
In other words, we've designed the E-Business Suite to be able to use load-balancers in general.

The minimum requirement is that a load-balancer support session
persistence
, where a client's initial HTTP connection is directed to a
particular application server, then subsequent HTTP requests from that
client are directed to the same server.  As long as a
load-balancer is able to handle session persistence (also referred to
as "stickiness"), it's likely to work with the E-Business Suite.

Related

Comments (13)

Hello Steven,

Thank you for continuing your great BLOG.

One question in the context of you latest post - Load-Balancing E-Business Suite Environments.
In the E-Business Suite supporting types of load-balancing list you mentioned:

- Apache Jserv Layer

- Forms Metric Server

Some times my customers asking me is it a good idea to enable those two LB methods in addition to

# HTTP Layer

# DNS-based

My answer always was - don’t do it.

As HTTP and DNS balancers are doing the job already. They providing availability and balancing all sessions across all available Apps instances.

By introducing Jserv & Forms balancing methods you unnecessary complicate the configuration of your system.


Can you please give us you opinion in that context.

Thank you in advance,
Yury

Hi Steven,

You have mentioned that Oracle internal EBS environment is running on 58 Linux-based application servers.
From my limited 5 years Apps DBA experience 90% of load on the EBS systems most of the cases are on DB tier.
Is it true for Oracle Internal EBS as well?
If it is, then I wonder what kind of server you are using to run DB part of EBS instance?


Thank you in advance,

Yury

Steven,

Would it be possible to dedicate some of you post to Apps Cloning?
In particular automate cloning is one of the most common topics discussed in the forums and mailing lists.

Thank you in advance,
Yury

Steven Chan:

Thanks for the suggestion, Yury.  I'll add this to my list for future articles.Regards,Steven

Steven Chan:

Thanks for the suggestion -- I plan to cover Oracle's own internal Global Single Database case study in a future article.Regards,Steven

Steven Chan:

Yury,I agree with your general strategy of keeping an environment's configuration as clean as possible.  Reduced complexity is always easier to manage than the converse.That said, it may be a bit hasty to rule out Apache JServ Layer load-balancing and Forms Metric Server as a general position.  There are circumstances where these might be appropriate.  For example, if you're trying to handle a lot of Forms traffic, you have the option of using the Forms Listener Servlet, which requires Apache JServ layer load-balancing to be set up.  Apache JServ layer load-balancing also has the advantage of using the mod_oprocmgr plug-in, which is handy for monitoring JVMs.  It can stop and restart individual JVMs that have died, which is a more fine-grained approach than just bouncing an  entire Oracle9i Application Server 1.0.2.2.2 application server.  So, I think it depends on your requirements and what you're trying to achieve.Regards,Steven

Steven Chan:

Andie,Thanks for your feedback!  Your timing is perfect.  I have two articles in the queue right now:  one will cover the use of Oracle Application Manager (OAM), and the other will cover the use of OAM with Oracle Enterprise Manager Grid Control.Stay tuned - these will be coming in a couple of days.It's possible to use Web Cache as a reverse proxy in a Demilitarized Zone; that's fully supported with the latest Web Cache 10g (10.1.2.0.2).  See this article:    In-Depth: Demilitarized Zones and the E-Business SuiteIf you'd like more details about using Web Cache with the E-Business Suite, the full documentation can be found here:Installing and Configuring Oracle Application Server Web Cache with Oracle E-Business Suite 11i (Note 306653.1).Regards,Steven

Andie McCurdy:

Steven - many thanks for the great blog - keep up the great work!

Quick question on Load Balancing & Grid Control.

When you install Grid control (Enterprsie manager) you also get a full 10gAS home & 10gDB with its own Web Cache - Can you explain how I can deploy Grid Control to administer EBusiness suite and to reuse the exisiting Web Cache in front of EBusiness and also allow it to be used by Grid Control. Maybe you could provide one of your diagrams to explain.. Would this box sit within the DMZ?

many thanks

Andie..

Steven Chan:

I trust you've seen my recent new article on this very
subject by now:
 
    Using Enterprise
Manager with Applications Manager
Regards,Steven

Andie McCurdy:

Stephen, many thanks for the response. But its not answered my question exactly. Just to clarify.

My Customer does not want to use Web Cache in front of Ebusiness Suite - they would like to continue to use Apache and maybe even introduce a hardware load balancer later on... According to Grid Control 'Advanced Configuration Guide' Section 6.8 "The Web servers such as OracleAS Web Cache, Oracle HTTP Server, and Apache HTTP Server collect the end-user performance data and store it in the log file." Are these alternatives to Web Cache and are they a supported/certified with Grid Control & EBusiness Suite combination?

Steven Chan:

Andie,It's possible to use Oracle Enterprise Manager to monitor OracleAS Web Cache, Oracle HTTP Server, and generic Apache HTTP Server nodes.  You need the Grid Control Plug-in for Applications for this.Regards,Steven 

mili:

Hi Steven ,

We need to configure pcp application tier and we 2 nodes on each scenario . As per my understanding we need to have share storage for pcp . How to have this shared storage in each case like in RHEL 5 and hpux-itanium . So that both can read the content concurrently .can we use NFS mount so that both node can access simoultaneously . Need your valuable input .

Regards
mili

Steven Chan:

Mili,

I'm afraid that I don't have sufficient experience in this kind of multi-platform shared storage setup to offer any useful guidance here. You might wish to contact someone in our Oracle Consulting group for assistance with this. Alternately, you may wish to contact Red Hat and HP Support for recommendations for products compatible with their respective operating systems.

Good luck with your implementation.

Regards,
Steven

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Google Search

Archives

Subscribe to Updates

Powered by
Movable Type and Oracle