Performance Management For Cluster Based Web Services

Size: px
Start display at page:

Download "Performance Management For Cluster Based Web Services"

Transcription

1 Performance Management For Cluster Based Web Services Ron Levy, Jay Nagarajarao, Giovanni Pacifici, Mike Spreitzer, Asser Tantawi, and Alaa Youssef March 2003 IBM TJ Watson Research Center 2002 IBM Corporation

2 Outline Motivating Scenario Objectives Architecture and Prototype Implementation System Model Experimental Results Summary and Conclusions 2

3 Motivating Scenario Time Sensitive Service Fortune 500 Customer App 1 Bulk Service Small Customer App 2 Application Hosting Environment Request Flood 3

4 Motivating Scenario (cont.) Time Sensitive Service Fortune 500 Customer App 1 Bulk Service Small Customer App 2 Application Hosting Environment Request Flood 4

5 Need For Overload Control Throughput (req/sec) Number of Concurrent Requests 5

6 Objectives Classify requests based on client identities and invoked operations Isolate requests belonging to different classes Allocate resources in real-time and on a per request class basis Provide performance guarantees for critical services Provide different performance guarantees to different customers Use SLAs to represent performance guarantees Avoid specific hardware or OS prerequisites to achieve these goals Benefits: Infrastructure efficiency and flexibility Ability to handle rapid changes in traffic loads and patterns High resource utilization Hardware and OS independent solution App 1 App 2 6

7 Architecture DMZ App Servers Mainframe Proxy(Gateway) Client Internet Real-time mechanisms that act on each request Event-based control network for asynchronous communications among controllers Control Network Database Servers resource manager coordinates controllers to achieve global optimum Global Manager Management Console 7

8 Architecture: Control Mechanisms and Global Resource Manager Classification and Admission Control Throughput Control Scheduling and Flow Control Routing and Load Balancing Server Client Client Server Client Server Client Server SLAs Operational Goals Global Manager Traffic Measurements Service Measurements Server Measurement 8

9 Prototype Implementation: Modular Design Takes Advantage of Axis Handlers or WS Gateway Filters Req Q Mgr/Scheduler Queue up Go ahead Resource release request Auth Handler Classification Handler Throughput Policing Handler Request Queue Handler Dispatch Handler Response Handler Other Handler response Dispatch requests to servers Response 9

10 Global Resource Manager Requests Scheduler Management Parameters Resource Monitoring Resource Configuration Traffic Load Service Time Utility Available Capacity Global Resource Manager SLA Contracts SLO Parameters Requests Scheduler Scheduling Weights Max Concurrency 10

11 Utility Function Function of service performance level (avg response time) Maps the service performance level into a business value measure May capture customer expectation and satisfaction May implement a business game plan U c (τ c, t c ) α c =2 α c =1.5 β c =1 t c α c =1 τ c β c =1.5 β c =2 11

12 Optimization Criteria Cumulative: maximize sum of utilities U 2 Max U 1 + U 2 U 1 Equalize: maximize min of utilities U 2 Max Min (U 1, U 2 ) U 1 12

13 Management Console In manual mode 13

14 System Model System lambda Gateway S T Server allocated threads 1/mu. n GRM uses system model to predict response time given a certain allocation vector Model continuously tuned based on measured performance parameters Model Lambda = lambda /n T mu = 1/T + lambda/n Experimented with several queuing models 14

15 Experimental Results System Behavior March 2003 IBM TJ Watson Research Center 2002 IBM Corporation

16 Closed Loop Model Think Time Throughput Response Time Service Time System Utilization Queue Length 16

17 Demo Configuration and Assumptions Closed loop with finite clients Max service request concurrency (N = 10) Number of classes (K = 2) Mean response time SLO (t) M/M/1 Queue Model Linear utility function u(t) MaxMin utility optimization criterion 17

18 Class Parameters Service Time (1/λ) Think Time (Z) Min Allocation Target (τ) Weight Gold 0.5 sec 1.0 sec sec 1 Silver 0.5 sec 1.0 sec sec 1 18

19 Demo Scenario 30 c b Silver 10 a d Gold 30

20 30 c b Silver 10 a d 10 Gold 30 τ a b c d τ 20

21 30 c b Silver 10 a d 10 Gold 30 a b c d 21

22 30 c b Silver 10 a d 10 Gold 30 a b c d 22

23 30 c b Silver 10 a d 10 Gold 30 a b c d 23

24 30 c b Silver 10 a d 10 Gold 30 a b c d 24

25 30 c b Silver 10 a d 10 Gold 30 a b c d 25

26 30 c b Silver 10 a d 10 Gold 30 a b c d 26

27 30 c b Silver 10 a d 10 Gold 30 a b c d 27

28 30 c b Silver 10 a d 10 Gold 30 a b c d 28

29 Experimental Results Performance Comparison March 2003 IBM TJ Watson Research Center 2002 IBM Corporation

30 Utility Regions Comparison - Disciplines -FIFO (no control) -Static Priority -GRM controlled 30

31 Static Priority : Utility Minimum Utility (No Control) Minimum Utility Silver Silver Gold Gold 31

32 GRM Controlled: Utility Minimum Utility (No Control) Minimum Utility (Control) Silver Silver Gold Gold 32

33 Summary and Conclusions Designed and prototyped SLA-based performance management system for Web Services GRM yields near optimal allocations using simple queueing models with dynamic correction The impact of allocation is more significant in heavy load conditions Disciplines that are oblivious to performance targets may lead to undesirable results System is responsive to coarse fluctuations in traffic characteristics WSMM included in IBM WSTK (Web Services ToolKit) available for download at: 33