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

LOAD BALANCING CONTROL OF WEB SERVER CLUSTERS:

N-TANKS MODEL AND A CTCT METHOD

By

MUTHUKUMARAN.K
41208405009

of
Mailam Engineering College

A PROJECT REPORT
Submitted to the

FACULTY OF INFORMATION AND COMMUNICATION ENGINEERING

In partial fulfillment of the requirements


for the award of the degree

of

MASTER OF ENGINEERING
IN
COMPUTER SCIENCE AND ENGINEERING

ANNA UNIVERSITY
CHENNAI 600 025

JUNE 2010
BONAFIDE CERTIFICATE

Certified that this project report titled “LOAD BALANCING CONTORL OF

WEB SERVER CLUSTERS: N-TANKS MODEL AND A CTCT METHOD” is the

bonafide work of Mr.K.MUTHUKUMARAN (Registration Number: 41208405009) who

carried out the research under my supervision. Certified further, that to the best of my

knowledge the work reported here in does not form part of any other project report or

dissertation on the basis of which a degree or award was conferred on an earlier occasion

on this or any other candidate.

Mr.S.PRASANNA, M.E., M.I.S.T.E, Mr.M.RAMALINGAM, M.E., (P.hD),


SUPERVISOR HEAD OF THE DEPARTMENT
LECTURER ASSISTANT PROFESSOR
Department of Computer Science Department of Computer Science
and Engineering. and Engineering.
Mailam Engineering College Mailam engineering College
Mailam-604304. Mailam-604304.

Submitted on the exam held on _______________________

Internal Examiner External Examiner


ABSTRACT

With an increasing of the traffic on Internet, a Web-server usually overloads

during a heavy-request period. Web-server cluster architectures have been widely

employed to provide high-efficiency Internet services. This paper is concerned with load

balancing control of Web-server clusters . A Web- server is modeled as a tank with an

inflow and an outflow, and hence a Web-server cluster i s modeled a s a multiple-

tanks system with certain inflow constraint. A control technique, called continuous token

control technique (CTCT), which adopts conventional PID approach is proposed to

address the issue of the traffic balancing on the Web-server clusters. The principle of the

proposed approach is explained and demonstrated. The results show that the proposed

CTCT technique is effective and scalable

The current demand for high performance computing is pushing the

hardware and software to new limits. As Internet services become more popular and

pervasive. More and more content is added online everyday and users request for

information is growing exponentially. The real problem is scalability of services. Serve a

single user as well as it can serve hundreds or thousands of simultaneous users.


ACKNOWLEDGEMENT

I wish to express my deep gratitude to our honorable Founder and Chairman

SHRI.N.KESAVAN, Managing Director SHRI.M.DHANASEKARAN, and our

Secretary SHRI.S.V.SUGUMARAN for their kind support for doing this project.

I wish to express my sincere thanks to Dr.A.T.RAVICHANDRAN, M.E, P.hD, Principal

of our college for providing the encouragement, valuable support and facilities extended to

carry out this project successfully.

It gives me great pleasure to convey my sincere thanks to Mr.S.SENTHIL, M.E, P.hD,

Vice principal of Mailam Engineering College for his advice and encouragement.

I express unique pleasure and honor in thanking Mr.RAMALINGAM, M.E, (P.hD),

Head of the Department, for his support and guidance for the project.

I am grateful to our Guide, Mr.S.PRASANNA, M.E, M.I.S.T.E, and Mailam Engineering

College for supporting me with the provision of necessary facilities.

My Sincere thanks to or CO-ORDINATOR Mr.R.RAJAPPAN, M.E,P.hD, and all other

staff members of Mailam Engineering College for their guidance and constant

encouragement in proceeding this dissertation work. Support from all my friends and

families have given immense strength and urge in us to make the project a success and they

have been moral support all through.


TABLE OF CONTENTS

CHAPTER No. TITLE PAGE No.

ABSTRACT iii
TABLE OF CONTENTS v
LIST OF TABLES viii
LIST OF FIGURES ix
LIST OF ABBREVATION x

1 INTRODUCTION 1
1.1 PROBLEMS FACED IN CONCURRENT SERVICES 1
1.1.1 Internet Services and Existing OS Designs 1
1.1.2 Existing OS Design Issues 2
1.2 OBJECTIVE 3
1.2.1 Existing system 4
1.3 PROPOSED SYSTEM 5
1.3.1 Thread usage 6
1.3.2 Threaded Server 7
1.4 PROJECT ORGANIZATION 8

2 SYSTEM ANALYSIS AND DESIGN 9


2.1 REQUEST HANDLER 10
2.1.1 User/Kernel Implementation 11
2.1.2 Implementing threads in User Space 11
2.1.3 Pop-Up Threads 13
2.2 THREAD POOLS 14
2.2.1 Risks of Using Thread Pools 14
2.2.2 Deadlock 15
CHAPTER No. TITLE PAGE No.
2.2.3 Resource Thrashing 15
2.2.4 Concurrent Errors 16
2.2.5 Thread Leakage 16
2.2.6 Request Overload 16
2.3 EFFECTIVE THREAD POOLS BY SSA 17
2.4 RESOURCE SCHEDULER 17
2.5 RESPONSE TIME CONTROLLER DESIGN 19
2.6 SERVICE DEGRADATON 20
2.7 THREAD POOL PERFORMANCE MONITOR 21
2.8 LITERATURE SURVEY 27
2.9 PROJECT RELATED WORK 30
2.10 CONTROL FRAMEWORK FOR SEDA-BASED 32
FAIR SERVICE
2.10.1 Global Control Framework 33
2.11 SELF-TUNE STAGE MODEL 35

3 IMPLEMENTATION 37
3.1 A HIGH-PERFORMANCE HTTP SERVER 37
3.2 JAVA THREADS 37
3.3 REQUEST HANDLER 38
3.4 THREAD POOLS 38
3.5 RESOURCE CONTROLLERS 38

3.6 RESOURCE SCHEDULER AND THREAD 38


POOL PERFORMANCE MONITOR

4 TESTING 41
TEST SETUP 41

CHAPTER No. TITLE PAGE No.


4.2 TESTING STRATEGIES 41
4.3 TEST PROCEDURE 42
4.3.1 System Testing 42
4.4 TEST DATA AND OUTPUT 42
4.4.1 Unit Testing 42
4.4.2 Functional Test 42
4.4.3 Performance Test 43
4.4.4 Stress Test 43
4.4.5 Structured Test 43
4.5 SOFTWARE TESTING STRATEGIES 43
4.6 INTEGRATION TESING 44
4.7 VALIDATION TESTING 44

5. CONCLUSION AND FUTURE WORK 45

APPENDICES 47

APPENDIX 1 (SAMPLE CODE) 47


APPENDIX 2 (SCREEN SHOTS) 53

REFERENCES 59
LIST OF TABLES

Table No. INDEX Page No.

1.1 THREAD Vs EVENTS 5


LIST OF FIGURES

Figure No. INDEX Page No.

1.1 Staged Events Driven Architecture 4

1.2 Threaded server 7

2.1 Scalable Service Architecture 10

2.2 User Thread Package 12

2.3 Creation of a new thread 14

2.4 Web-user’s interaction 22

2.5 SAGE over wide area networks 31

2.6 Global Control Framework 33

2.7 Self-Tune Stage Model 35

3.1 Implementation Diagram 40


LIST OF ABBREVIATIONS

S No. ABBREVIATION EXPANSION

1 WWW WORLD WIDE WEB


2 PID PROPORTIONAL INTEGRAL
DERIVATIVE METHOD
3 CTCT CONTINUOUS TOKEN CONTROL
TECHNIQUE
4 CPU CENTRAL PROCESSING UNIT
5 I/O INPUT/OUTPUT
6 SSA SCALABLE SERVICE ARCHITECTURE
7 POP POST OFFICE PROTOCOL
8 HTTP HYPER TEXT TRANSFER PROTOCOL
9 LWP LIGHT WEIGHT PROCESS
10 JVM JAVA VIRTUAL MACHINE
11 FTP FILE TRANSFER PROTOCOL
12 JDBC JAVA DATABASE CONNECTIVITY
13 API APPLICATION PROGRAMMING
INTERFACE
14 RED RANDOM EARLY DETECTION
15 FIFO FIRST IN FIRST OUT
16 TPPM THREAD POOL PERFORMANCE
MONITOR
17 AMI ASYNCHRONOUS METHOD
INVOCATION
18 SMI SYNCHRONOUS METHOD
INVOCATION
19 AMH ASYNCHRONOUS METHOD HANDLING 20
CORBA COMMON OBJECT REQUEST BROKER
ARCHITECTURE
21 DFD DATA FLOW DIAGRAM
22 RMI REMOTE METHOD INVOCATION
23 LAN LOCAL AREA NETWORK
24 SEDA STAGED EVENT DRIVEN
ARCHITETURE
25 HA HIGH AVAILABILITY
26 CSM CLUSTER SERVICE MANAGER
27 DNS DOMAIN NAME SERVER
28 PAWN PRODUCER ARCHIVE WORKFLOW
NETWORK
29 RAM RANDOM ACCESS MEMORY
30 OS OPERATING SYSTEM

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