Вы находитесь на странице: 1из 19

Load Sharing and Balancing

Agenda
Introduction Basic concepts Advanced concepts of server Load Balancing Application - Global server load balancing (GSLB) Application Web Caching Load balancing in Java

Introduction

In computer networking, load balancing is a technique to distributed work between many computers, processes, hard disks or other resources in order to get optimal resource utilization and decrease computing time [3]. The function is performed by the load balancers.

Introduction Understanding the Load Balancer

Fig 1.1 Server Farm with a load balancer [2]

Introduction Understanding the Load Balancer


An easy example Router in a call center server Load Balancer Software & hardware Various other functions like

Server load balancing Firewall load balancing Transparent cache switching Server protection Fault Tolerance

Load Balancer does not works in the application level

Advanced Concepts

Session Persistence The mega proxy problem Delayed binding

Cookie switching

Advanced Concepts - Session Persistence

How application that runs on top of TCP/IP protocol affects the function of load balancer Maintain Session[2]

Advanced Concepts the mega proxy problem

Situations where the source IP is not a reliable way to identify a user, due to a proxy server is known as the megaproxy problem

Advanced Concepts

Delayed Binding

Delayed binding is this process of delaying the binding of a TCP connection to a server until after the application request is received.

Cookie Switching

Reading the cookie information to solve the Mega proxy problem

Application - Global Server Load Balancing

Domain Naming Service

Positioning the GSLB


Not to affect the existing flow Site selection

Application - GSLB

Site selection based on the following [2] Site health conditions Site response time Site Loading time

Application Web Caching

Caches can be installed and utilized with the Load balancers in the following ways [2]

Forward proxy for client acceleration Transparent proxy for client acceleration Reverse proxy for server acceleration Transparent reverse proxy for server acceleration

Application Web Caching

Transparent reverse proxy for server acceleration [2]

Load Balancing in Java


Load Balancing for Servlets and JSPs Load Balancing for EJBs and RMI Objects Load Balancing for JDBC Connections

Load balancing in Java Servlets and JSPs

Load Balancing with a Proxy Plug-in


Weblogic proxy plug-in maintains as list of web logic servlet and JSP instances
Forwards the HTTP request to those cached instances in round-robin method Some webservers and associated proxies Weblogic server & HTTPClusterServlet Apache with Apache proxy plug-ins Microsoft IIS with IIS plugins

Load balancing in Java EJBs and RMIs

The Object instances stored in the stubs [1]


Techniques
Round Robin Load Balancing Weight-Based Load Balancing Random Load Balancing

Load balancing in Java EJBs and RMIs

Round Robin Load Balancing


Server instances called in order Simple and cheap are the advantages If one is slow others will be affected

Weight based load balancing


Weighted in scale of 1-100 depending on the load managed by server Load distributed accordingly

Random Load Balancing


Does not discrete difference in processing and assumes homogenous systems Overhead in generating random number simple

Load balancing in Java JDBC Connection

Load balancing of JDBC connection requires the use of a multipool configured for load balancing. Load balancing support is an option you can choose when configuring a multipool [1]. Multipool has an ordered lit of connection pool that routes the connection Default the first connection pool if not run in load balancing mode

References
o

Load Balancing in Java [1]

http://e-docs.bea.com/wls/docs81/cluster/ load_balancing.html#1043771
o

Other references on load balancing from [2]

Load Balancing Servers,Firewalls, and Caches by Chandra Kopparapu


o

Wiki Load Balancing [3]

http://en.wikipedia.org/wiki/Load_balancing

Вам также может понравиться