Presentation is loading. Please wait.

Presentation is loading. Please wait.

Load Sharing and Balancing - Saravanan Mathialagan Masters in Computer Science Georgia State University.

Similar presentations


Presentation on theme: "Load Sharing and Balancing - Saravanan Mathialagan Masters in Computer Science Georgia State University."— Presentation transcript:

1 Load Sharing and Balancing - Saravanan Mathialagan Masters in Computer Science Georgia State University

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

3 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]. 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. The function is performed by the load balancers.

4 Introduction – Understanding the Load Balancer Fig 1.1 Server Farm with a loadbalancer [2] Fig 1.1 Server Farm with a loadbalancer [2]

5 Introduction – Understanding the Load Balancer An easy example – Router in a call center server An easy example – Router in a call center server Load Balancer – Software & hardware Load Balancer – Software & hardware Various other functions like Various other functions like Server load balancing Server load balancing Firewall load balancing Firewall load balancing Transparent cache switching Transparent cache switching Server protection Server protection Fault Tolerance Fault Tolerance Load Balancer does not works in the application level Load Balancer does not works in the application level

6 Advanced Concepts Session Persistence Session Persistence The mega proxy problem The mega proxy problem Delayed binding Delayed binding Cookie switching Cookie switching

7 Advanced Concepts - Session Persistence How application that runs on top of TCP/IP protocol affects the function of load balancer – Maintain Session[2] How application that runs on top of TCP/IP protocol affects the function of load balancer – Maintain Session[2]

8 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 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

9 Advanced Concepts Delayed Binding Delayed Binding Delayed binding is this process of delaying the Delayed binding is this process of delaying the binding of a TCP connection to a server until binding of a TCP connection to a server until after the application request is received. after the application request is received. Cookie Switching Cookie Switching Reading the cookie information to solve the Mega proxy problem

10 Application - Global Server Load Balancing Domain Naming Service Domain Naming Service Positioning the GSLB Positioning the GSLB Not to affect the existing flow Not to affect the existing flow Site selection Site selection

11 Application - GSLB Site selection based on the following [2] Site selection based on the following [2] Site health conditions Site health conditions Site response time Site response time Site Loading time Site Loading time

12 Application – Web Caching Caches can be installed and utilized with the Load balancers in the following ways [2] Caches can be installed and utilized with the Load balancers in the following ways [2] Forward proxy for client acceleration Forward proxy for client acceleration Transparent proxy for client acceleration Transparent proxy for client acceleration Reverse proxy for server acceleration Reverse proxy for server acceleration Transparent reverse proxy for server acceleration Transparent reverse proxy for server acceleration

13 Application – Web Caching Transparent reverse proxy for server acceleration [2] Transparent reverse proxy for server acceleration [2]

14 Load Balancing in Java Load Balancing for Servlets and JSPs Load Balancing for Servlets and JSPs Load Balancing for EJBs and RMI Objects Load Balancing for EJBs and RMI Objects Load Balancing for JDBC Connections Load Balancing for JDBC Connections

15 Load balancing in Java – Servlets and JSPs Load Balancing with a Proxy Plug-in Load Balancing with a Proxy Plug-in Weblogic proxy plug-in maintains as list of web logic servlet and JSP instances 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 Forwards the HTTP request to those cached instances in round-robin method Some webservers and associated proxies Some webservers and associated proxies Weblogic server & HTTPClusterServlet Weblogic server & HTTPClusterServlet Apache with Apache proxy plug-ins Apache with Apache proxy plug-ins Microsoft IIS with IIS plugins Microsoft IIS with IIS plugins

16 Load balancing in Java – EJB’s and RMI’s The Object instances stored in the stubs [1] The Object instances stored in the stubs [1] Techniques Techniques Round Robin Load Balancing Round Robin Load Balancing Weight-Based Load Balancing Weight-Based Load Balancing Random Load Balancing Random Load Balancing

17 Load balancing in Java – EJB’s and RMI’s Round Robin Load Balancing Round Robin Load Balancing Server instances called in order Server instances called in order Simple and cheap are the advantages Simple and cheap are the advantages If one is slow others will be affected If one is slow others will be affected Weight based load balancing Weight based load balancing Weighted in scale of 1-100 depending on the load managed by server Weighted in scale of 1-100 depending on the load managed by server Load distributed accordingly Load distributed accordingly Random Load Balancing Random Load Balancing Does not discrete difference in processing and assumes homogenous systems Does not discrete difference in processing and assumes homogenous systems Overhead in generating random number Overhead in generating random number simple simple

18 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]. 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 Multipool has an ordered lit of connection pool that routes the connection Default the first connection pool if not run in load balancing mode Default the first connection pool if not run in load balancing mode

19 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 http://en.wikipedia.org/wiki/Load_balancing


Download ppt "Load Sharing and Balancing - Saravanan Mathialagan Masters in Computer Science Georgia State University."

Similar presentations


Ads by Google