Load Sharing and Balancing

groundcombInternet και Εφαρμογές Web

31 Οκτ 2013 (πριν από 3 χρόνια και 11 μήνες)

101 εμφανίσεις

Load Sharing and Balancing

-

Saravanan Mathialagan

Masters in Computer Science

Georgia State University

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


EJB’s and RMI’s



The Object instances stored in the stubs
[1]



Techniques


Round Robin Load Balancing



Weight
-
Based Load Balancing


Random Load Balancing






Load balancing in Java


EJB’s and RMI’s


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