SlideShare uma empresa Scribd logo
1 de 53
Intro Solution Impl. Eval. Conclusion




Achieving Predictability and Service Differentiation
                 in Web Services

                          Vidura Gamini Abhaya
                Prof. Zahir Tari and Assoc. Prof. Peter Bertok

                  Distributed Systems and Networking Group
                      School of Computer Science and IT
                               RMIT University
                             Melbourne, Australia


                             December 16, 2009




                  V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion


Agenda


  1   Introduction

  2   Proposed Solution

  3   Implementation

  4   Emperical Evaluation

  5   Conclusion




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


What’s Next?


  1   Introduction
        Motivation
        Real-time Applications
        Research Goals and Scope

  2   Proposed Solution

  3   Implementation

  4   Emperical Evaluation

  5   Conclusion


                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Motivation

     Research on QoS fails to guarantee predictability in service
     execution.




                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Motivation

     Research on QoS fails to guarantee predictability in service
     execution.
     Assumptions are made on achieving QoS levels.




                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Motivation

     Research on QoS fails to guarantee predictability in service
     execution.
     Assumptions are made on achieving QoS levels.
     WS architectures and supporting infrastructures lack support
     for predictability.
     E.g. - SOAP engines and App Servers service requests in a
     best effort manner.




                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Motivation

      Research on QoS fails to guarantee predictability in service
      execution.
      Assumptions are made on achieving QoS levels.
      WS architectures and supporting infrastructures lack support
      for predictability.
      E.g. - SOAP engines and App Servers service requests in a
      best effort manner.
      Design goals are to increase throughput by concurrent
      processing.




  No. of requests served parallely ∝ Time taken to service a request

                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Motivation

     Research on QoS fails to guarantee predictability in service
     execution.
     Assumptions are made on achieving QoS levels.
     WS architectures and supporting infrastructures lack support
     for predictability.
     E.g. - SOAP engines and App Servers service requests in a
     best effort manner.
     Design goals are to increase throughput by concurrent
     processing.
     Apps. with real-time requirements cannot make use of web
     services.


            Real-time applications ⇒ require predictability

                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Real-time Applications                [9]



  Characteristics




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Real-time Applications                [9]



  Characteristics
  Real-time computing = Super Fast computing (Instantaneous)




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Real-time Applications                [9]



  Misconceptions
  Real-time computing = Super Fast computing (Instantaneous) X

  Characteristics
  Predictability! - A correct result obtained too late isn’t useful
  Speed of execution is less important




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Real-time Applications                [9]



  Misconceptions
  Real-time computing = Super Fast computing (Instantaneous) X

  Characteristics
  Predictability! - A correct result obtained too late isn’t useful
  Speed of execution is less important

  Should not sacrifice the deadline of an important task for the sake
  of another (even if it has to be rejected)




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Real-time Applications                [9]



  Misconceptions
  Real-time computing = Super Fast computing (Instantaneous) X

  Characteristics
  Predictability! - A correct result obtained too late isn’t useful
  Speed of execution is less important

  Should not sacrifice the deadline of an important task for the sake
  of another (even if it has to be rejected)

  Examples
  Nuclear plant control systems, Avionics system, Factory floor
  control systems


                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Research...

  Goals
  - Enable the use of web services as a middleware in applications
  with real-time requirements
  - Means of achieving execution time QoS for non real-time
  applications.




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Motivation Real-time Apps Goals and Scope


Research...

  Goals
  - Enable the use of web services as a middleware in applications
  with real-time requirements
  - Means of achieving execution time QoS for non real-time
  applications.

  Scope
  Supporting real-time applications requires predictability in,
  - Message processing and service execution
  - Network communication

  In the context of this research, only execution level predictability is
  considered. No transmission delays and contentions are assumed at
  the network level.

                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


What’s Next?

  1   Introduction

  2   Proposed Solution
        Introduction of a Deadline
        Admission Control
        Schedulability Check
        Scheduling Algorithm

  3   Implementation

  4   Emperical Evaluation

  5   Conclusion

                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Introduction of a Deadline




  Definition
  Absolute time period the request must be serviced within


                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Introduction of a Deadline




  Definition
  Absolute time period the request must be serviced within

  Communicated to the server using SOAP headers
                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Admission Control

  Challenges
    1   No prior information about requests and their arrival
    2   Difficult to schedule them to meet deadlines




                        V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Admission Control

  Challenges
    1   No prior information about requests and their arrival
    2   Difficult to schedule them to meet deadlines

  Therefore...
  It is impossible to accept all requests and still meet all their
  deadlines




                        V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Admission Control

  Challenges
    1   No prior information about requests and their arrival
    2   Difficult to schedule them to meet deadlines

  Therefore...
  It is impossible to accept all requests and still meet all their
  deadlines

  - Only accept requests that we can meet the deadlines
  - Decision made runtime: based on requested and available CPU
  time

  Contribution
  An on-the-fly admission control mechanism based on real-time
  scheduling principles

                        V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Schedulability Check




  Step 1
  Ensure deadline requirement of new task could be met                              a

     a
         (Based on equations 7,8 & 9 of the model)

  * The execution time requirement of the new task is obtained either as a grouped
  average of the previous executions or offline profiled execution time

                           V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Schedulability Check




  Step 2
  Ensure new task does not compromise the deadlines of already
  accepted tasks a
  The effect of the new task must be checked individually, on each
  task finishing thereafter
    a
        (Based on equations 10,11 & 12 of the model)

                          V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Scheduling Algorithm




     Accepted tasks are scheduled in the order of decreasing
     deadlines (EDF)
     This ensures all tasks meet their deadline requirement
     Schedulable bound of EDF is 100%



                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                         Task     ST    ET    D
                                                                          T1       0     5    25




                                                                         ST - Start Time (ms)
                                                                         ET - Execution Time (ms)
                                                                         D - Deadline (ms)




                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion           Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                       Task     ST    ET    D
                                                                                        T1       0     5    25
                                                                                        T2       1     6    19




                                                                                       ST - Start Time (ms)
                                                                                       ET - Execution Time (ms)
                                                                                       D - Deadline (ms)



  Schedulability Check calculation

                                 Proc. Demand Within      =      (0 + 6)ms
                                                          =      6ms
                                     Proc. Demand After   =      (0 + 4)ms
                                                          =      4ms
                                     Total Proc. Demand   =      (6 + 4)ms
                                                          =      10ms
                                         Loading Factor   =         10
                                                                 (25−1)
                                                          =      0.4167
                                                 0.4167   <      1 (Accept Request)



                              V. Gamini Abhaya et. al.        ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion      Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                     Task    ST    ET     D
                                                                                      T1      0     5     25
                                                                                      T2      1     6     19
                                                                                      T3      3     3      7




                                                                                     ST - Start Time (ms)
                                                                                     ET - Execution Time (ms)
                                                                                     D - Deadline (ms)



  Schedulability Check calculation

                            Proc. Demand Within      =   3ms (0 + 3)
                          Proc. Demand up to T2      =   3ms (0 + 3)
                             Total Proc. Demand      =   7ms (3 + 4)
                                   Loading Factor    =      7
                                                         (20−3)
                                             0.42    <   1 (Continue on to next check)

                          Proc. Demand up to T1      =   8ms (4 + 4)
                             Total Proc. Demand      =   11ms (3 + 8)
                                   Loading Factor    =      11
                                                         (25−3)
                                              0.5    <   1 (Accept request)

                              V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion          Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                       Task    ST      ET       D
                                                                                        T1      0       5       25
                                                                                        T2      1       6       19
                                                                                        T3      3       3        7
                                                                                        T4      4       4        7




                                                                                       ST - Start Time (ms)
                                                                                       ET - Execution Time (ms)
                                                                                       D - Deadline (ms)



  Schedulability Check calculation

       Proc. Demand Within        =     2ms (0 + 2)          Proc. Demand up to T2      =     4ms (0 + 4)
     Proc. Demand up to T4        =     6ms (2 + 4)             Total Proc. Demand      =     10ms (6 + 4)
             Loading Factor       =        6                          Loading Factor    =        10
                                        (11−4)                                                (20−4)
                       0.86       <     1 (Continue...)                         0.47    >     1 (Continue...)

     Proc. Demand up to T1        =     8ms (4 + 4)
        Total Proc. Demand        =     14ms (6 + 8)
              Loading Factor      =        14
                                        (25−4)
                       0.737      <     1 (Accept request)


                               V. Gamini Abhaya et. al.      ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion       Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                   Task     ST    ET    D
                                                                                    T1       0     5    25
                                                                                    T2       1     6    19
                                                                                    T3       3     3     7
                                                                                    T4       4     4     7
                                                                                    T5       7     2     3



                                                                                   ST - Start Time (ms)
                                                                                   ET - Execution Time (ms)
                                                                                   D - Deadline (ms)



  Schedulability Check calculation

                                  Proc. Demand Within     =   2ms (0 + 2)
                                Proc. Demand up to T4     =   3ms (0 + 3)
                                   Total Proc. Demand     =   5ms (2 + 3)
                                         Loading Factor   =       5
                                                               (11−7)
                                                   1.25   <   1 (Reject Request)




                              V. Gamini Abhaya et. al.    ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion            Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                           Task    ST    ET     D
                                                                                            T1      0     5     25
                                                                                            T2      1     6     19
                                                                                            T3      3     3      7
                                                                                            T4      4     4      7
                                                                                            T5      7     2      3
                                                                                            T6      8     7     10


                                                                                           ST - Start Time (ms)
                                                                                           ET - Execution Time (ms)
                                                                                           D - Deadline (ms)



  Schedulability Check calculation

                                     Proc. Demand Within        =     2ms (0 + 2)
                             Total Proc. Demand up to T6        =     9ms (2 + 7)
                                           Loading Factor       =        9
                                                                      (18−8)
                                                      0.9       <     1 (Continue...)

                                     Proc. Demand up to T2      =     4ms (0 + 4)
                                        Total Proc. Demand      =     13ms (9 + 4)
                                              Loading Factor    =        13
                                                                      (20−8)
                                                       1.083    <     1 (Reject Request)



                              V. Gamini Abhaya et. al.         ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion        Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                      Task    ST      ET       D
                                                                                       T1      0       5       25
                                                                                       T2      1       6       19
                                                                                       T3      3       3        7
                                                                                       T4      4       4        7
                                                                                       T5      7       2        3
                                                                                       T6      8       7       10
                                                                                       T7      9       2        6

                                                                                      ST - Start Time (ms)
                                                                                      ET - Execution Time (ms)
                                                                                      D - Deadline (ms)



  Schedulability Check calculation

      Proc. Demand Within        =    1ms (0 + 1)           Proc. Demand up to T2      =     4ms (0 + 4)
    Proc. Demand up to T6        =    3ms (1 + 2)              Total Proc. Demand      =     7ms (3 + 4)
             Loading Factor      =        3                          Loading Factor    =        7
                                       (15−9)                                                (20−9)
                        0.5      <    1 (Continue...)                         0.636    >     1 (Continue...)

    Proc. Demand up to T1        =    8ms (4 + 4)
       Total Proc. Demand        =    15ms (7 + 8)
             Loading Factor      =        15
                                       (25−9)
                     0.9375      <    (Request Accepted)



                              V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion        Deadline Admission Control Sched. Check Sched. Algo.


Sample Scenario

                                                                                      Task    ST      ET       D
                                                                                       T1      0       5       25
                                                                                       T2      1       6       19
                                                                                       T3      3       3        7
                                                                                       T4      4       4        7
                                                                                       T5      7       2        3
                                                                                       T6      8       7       10
                                                                                       T7      9       2        6

                                                                                      ST - Start Time (ms)
                                                                                      ET - Execution Time (ms)
                                                                                      D - Deadline (ms)



  Schedulability Check calculation

      Proc. Demand Within        =    1ms (0 + 1)           Proc. Demand up to T2      =     4ms (0 + 4)
    Proc. Demand up to T6        =    3ms (1 + 2)              Total Proc. Demand      =     7ms (3 + 4)
             Loading Factor      =        3                          Loading Factor    =        7
                                       (15−9)                                                (20−9)
                        0.5      <    1 (Continue...)                         0.636    >     1 (Continue...)

    Proc. Demand up to T1        =    8ms (4 + 4)
       Total Proc. Demand        =    15ms (7 + 8)
             Loading Factor      =        15
                                       (25−9)
                     0.9375      <    (Request Accepted)



                              V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Overview Components Enhancements


What’s Next?


  1   Introduction

  2   Proposed Solution

  3   Implementation
        Overview
        System Components
        Enhancements to Axis2

  4   Emperical Evaluation

  5   Conclusion


                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Overview Components Enhancements


Realising the model

  Overview
      Real-life implementation rather than a simulation
      Enhance existing web services middleware
      Apache Axis2 - Widely used and Open source SOAP engine
      Axis2 Java implementation selected




                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Overview Components Enhancements


Realising the model

  Overview
      Real-life implementation rather than a simulation
      Enhance existing web services middleware
      Apache Axis2 - Widely used and Open source SOAP engine
      Axis2 Java implementation selected


  Unsuitability of Standard Java for RT Apps.                   [Wang and Baglodi, 2002]

      Garbage Collector (GC) can pre-empt any running thread
      Cannot control when GC runs
      Priority model doesn’t properly map to OS level priorities
      Cannot prevent/resolve priority inversions
      On-demand Just-in-time compilation and class loading

                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Overview Components Enhancements


System Components

  Development Platform
  Real-time Specification for Java (RTSJ) ver 2.1a
         Additional thread priority levels mapping to OS priorities
         Priority levels GC cannot interrupt
         Pre-emptive Real-time scheduler
         Ability to compile ahead and pre-load classes
    a
        http://java.sun.com/javase/technologies/realtime/




                         V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Overview Components Enhancements


System Components

  Development Platform
  Real-time Specification for Java (RTSJ) ver 2.1a
         Additional thread priority levels mapping to OS priorities
         Priority levels GC cannot interrupt
         Pre-emptive Real-time scheduler
         Ability to compile ahead and pre-load classes
    a
        http://java.sun.com/javase/technologies/realtime/


  Operating System
         Sun Solaris version 10 update 08/05
         High-precision clocks
         Hooks for dev platforms to use RT features

                         V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Overview Components Enhancements


Enhancements to Apache Axis2




                     V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Eval. Summary Exec time comparison CPU Util.


What’s Next?


  1   Introduction

  2   Proposed Solution

  3   Implementation

  4   Emperical Evaluation
       Summary of Results
       Execution time Comparison
       CPU Utilisation

  5   Conclusion


                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion    Eval. Summary Exec time comparison CPU Util.


Experimental Results

  Metrics
  - Percent. of tasks accepted by RT-Axis2
  - Percent. of deadlines met by RT-Axis2 and Unmod. Axis2




                          V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion      Eval. Summary Exec time comparison CPU Util.


Experimental Results

  Metrics
  - Percent. of tasks accepted by RT-Axis2
  - Percent. of deadlines met by RT-Axis2 and Unmod. Axis2


  Comparison of RT-Axis2 and Unmod Axis2
                                                 Real-time Axis2               Unmodified Axis2
       Distribution    Inter-arrival    % Acc.    % D. Mis.      % D. Met    % D. Mis.  % D. Met
                       time(sec)
                       0.25 - 5          41.8         0           100          96.6          3.4
     Uniform
                       0.25 - 10         81.2         0           100          83.6         16.4
     Bnd. Expo.        0.25 - 2          62.5        0.1          99.9         42.6         57.4
                       0.25 - 5          99.3         0           100           0           100
     λ = 10−6          0.25 - 10         100          0           100           0           100
     Bnd. Expo.        0.25 - 2          100          0           100           0           100
                       0.25 - 5          100          0           100           0           100
     λ = 10−5          0.25 - 10         100          0           100           0           100
                       0.25 - 2          100         0.3          99.7          0           100
     Bnd. Pareto
                       0.25 - 5          100         0.1          99.9          0           100
     α = 0.5
                       0.25 - 10         100          0           100           0           100
                       0.25 - 2          99.4         0           100           0           100
     Bnd. Pareto
                       0.25 - 5          99.9         0           100           0           100
     α = 0.05
                       0.25 - 10         100          0           100           0           100




                          V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion      Eval. Summary Exec time comparison CPU Util.


Summary of Experimental Results

  Task Acceptance
  - RT-Axis2 accepts 42-100% of tasks for a good mix of tasks.
  - Expo and Pareto runs = 100% acceptance due to high concentration of small tasks.
  - Can fit more small tasks into a given period of time


                                                Real-time Axis2               Unmodified Axis2
       Distribution   Inter-arrival    % Acc.    % D. Mis.      % D. Met    % D. Mis.  % D. Met
                      time(sec)
                      0.25 - 5          41.8         0           100          96.6          3.4
     Uniform
                      0.25 - 10         81.2         0           100          83.6         16.4
     Bnd. Expo.       0.25 - 2          62.5        0.1          99.9         42.6         57.4
                      0.25 - 5          99.3         0           100           0           100
     λ = 10−6         0.25 - 10         100          0           100           0           100
     Bnd. Expo.       0.25 - 2          100          0           100           0           100
                      0.25 - 5          100          0           100           0           100
     λ = 10−5         0.25 - 10         100          0           100           0           100
                      0.25 - 2          100         0.3          99.7          0           100
     Bnd. Pareto
                      0.25 - 5          100         0.1          99.9          0           100
     α = 0.5
                      0.25 - 10         100          0           100           0           100
                      0.25 - 2          99.4         0           100           0           100
     Bnd. Pareto
                      0.25 - 5          99.9         0           100           0           100
     α = 0.05
                      0.25 - 10         100          0           100           0           100




                         V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion      Eval. Summary Exec time comparison CPU Util.


Summary of Experimental Results

  Task Acceptance
  - RT-Axis2 accepts 42-100% of tasks for a good mix of tasks.
  - Expo and Pareto runs = 100% acceptance due to high concentration of small tasks.
  - Can fit more small tasks into a given period of time


                                                Real-time Axis2               Unmodified Axis2
       Distribution   Inter-arrival    % Acc.    % D. Mis.      % D. Met    % D. Mis.  % D. Met
                      time(sec)
                      0.25 - 5          41.8         0           100          96.6          3.4
     Uniform
                      0.25 - 10         81.2         0           100          83.6         16.4
     Bnd. Expo.       0.25 - 2          62.5        0.1          99.9         42.6         57.4
                      0.25 - 5          99.3         0           100           0           100
     λ = 10−6         0.25 - 10         100          0           100           0           100
     Bnd. Expo.       0.25 - 2          100          0           100           0           100
                      0.25 - 5          100          0           100           0           100
     λ = 10−5         0.25 - 10         100          0           100           0           100
                      0.25 - 2          100         0.3          99.7          0           100
     Bnd. Pareto
                      0.25 - 5          100         0.1          99.9          0           100
     α = 0.5
                      0.25 - 10         100          0           100           0           100
                      0.25 - 2          99.4         0           100           0           100
     Bnd. Pareto
                      0.25 - 5          99.9         0           100           0           100
     α = 0.05
                      0.25 - 10         100          0           100           0           100




                         V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion      Eval. Summary Exec time comparison CPU Util.


Summary of Experimental Results

  Impact of Inter-arrival rate
  - Acceptance rate ∝ Inter-arrival time
  - Smaller inter-arrival times leads to task build-up at the server
  - Larger inter-arrival times means, on avg. more tasks completed by the next arrival


                                                 Real-time Axis2               Unmodified Axis2
       Distribution    Inter-arrival    % Acc.    % D. Mis.      % D. Met    % D. Mis.  % D. Met
                       time(sec)
                       0.25 - 5          41.8         0           100          96.6          3.4
      Uniform
                       0.25 - 10         81.2         0           100          83.6         16.4
      Bnd. Expo.       0.25 - 2          62.5        0.1          99.9         42.6         57.4
                       0.25 - 5          99.3         0           100           0           100
      λ = 10−6         0.25 - 10         100          0           100           0           100
      Bnd. Expo.       0.25 - 2          100          0           100           0           100
                       0.25 - 5          100          0           100           0           100
      λ = 10−5         0.25 - 10         100          0           100           0           100
                       0.25 - 2          100         0.3          99.7          0           100
      Bnd. Pareto
                       0.25 - 5          100         0.1          99.9          0           100
      α = 0.5
                       0.25 - 10         100          0           100           0           100
                       0.25 - 2          99.4         0           100           0           100
      Bnd. Pareto
                       0.25 - 5          99.9         0           100           0           100
      α = 0.05
                       0.25 - 10         100          0           100           0           100




                          V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion      Eval. Summary Exec time comparison CPU Util.


Summary of Experimental Results

  Deadline Achievement
  - RT-Axis2 results in all accepted tasks achieving deadlines, for a good task mix
  - Due to best effort nature, Unmod Axis2 misses majority of deadlines for the same
  - For very small tasks Unmod Axis2 performs marginally better
  i.e. due to overhead in RT-Axis2


                                                Real-time Axis2               Unmodified Axis2
       Distribution   Inter-arrival    % Acc.    % D. Mis.      % D. Met    % D. Mis.  % D. Met
                      time(sec)
                      0.25 - 5          41.8         0           100          96.6          3.4
     Uniform
                      0.25 - 10         81.2         0           100          83.6         16.4
     Bnd. Expo.       0.25 - 2          62.5        0.1          99.9         42.6         57.4
                      0.25 - 5          99.3         0           100           0           100
     λ = 10−6         0.25 - 10         100          0           100           0           100
     Bnd. Expo.       0.25 - 2          100          0           100           0           100
                      0.25 - 5          100          0           100           0           100
     λ = 10−5         0.25 - 10         100          0           100           0           100
                      0.25 - 2          100         0.3          99.7          0           100
     Bnd. Pareto
                      0.25 - 5          100         0.1          99.9          0           100
     α = 0.5
                      0.25 - 10         100          0           100           0           100
                      0.25 - 2          99.4         0           100           0           100
     Bnd. Pareto
                      0.25 - 5          99.9         0           100           0           100
     α = 0.05
                      0.25 - 10         100          0           100           0           100




                         V. Gamini Abhaya et. al.     ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion                                                        Eval. Summary Exec time comparison CPU Util.


Execution time comparison
                                                          1 - 5000000 (Uniform); 0.25sec - 5sec (Uniform)                                                                                     1 - 5000000 (Uniform); 0.25sec - 10sec (Uniform)
                            600000                                                                                                                             1.4e+06
                                                                                                       Real-tme Axis2                                                                                                                      Real-tme Axis2
                                                                                                     Unmodified Axis2                                                                                                                    Unmodified Axis2

                                                                                                                                                               1.2e+06
                            500000


                                                                                                                                                                1e+06
                            400000
      Execution Time (ms)




                                                                                                                                         Execution Time (ms)
                                                                                                                                                               800000

                            300000

                                                                                                                                                               600000

                            200000
                                                                                                                                                               400000


                            100000
                                                                                                                                                               200000



                                0                                                                                                                                   0
                                     0   500000   1e+06    1.5e+06   2e+06    2.5e+06 3e+06      3.5e+06    4e+06   4.5e+06   5e+06                                      0   500000   1e+06     1.5e+06 2e+06 2.5e+06 3e+06 3.5e+06              4e+06 4.5e+06 5e+06
                                                                             Task Size                                                                                                                       Task Size




  Timeliness of Execution
  -   RT-Axis2 achieves better exec. times for task mixes with high variety
  -   Unmod. Axis performs badly for the same due to best effort nature
  -   When requests are predominantly small both perform equally
  -   For very small tasks Unmod. Axis2 is better, i.e. no overhead
  -   RT-Axis2 deviations in expo. and pareto runs are intended.



                                                                       V. Gamini Abhaya et. al.                                       ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion                                                        Eval. Summary Exec time comparison CPU Util.


Execution time comparison

                                                 1 - 5000000 (Bounded Pareto) A - 0.05; 0.25sec - 2sec (Uniform)                                                                  1 - 5000000 (Bounded Pareto) A - 0.5; 0.25sec - 2sec (Uniform)
                            35000                                                                                                                             2500
                                                                                                       Real-tme Axis2                                                                                                                    Real-tme Axis2
                                                                                                     Unmodified Axis2                                                                                                                  Unmodified Axis2

                            30000
                                                                                                                                                              2000

                            25000
      Execution Time (ms)




                                                                                                                                        Execution Time (ms)
                                                                                                                                                              1500
                            20000



                            15000
                                                                                                                                                              1000


                            10000

                                                                                                                                                               500
                            5000



                               0                                                                                                                                0
                                    0   500000   1e+06    1.5e+06   2e+06    2.5e+06    3e+06   3.5e+06   4e+06    4.5e+06   5e+06                                   0   100000    200000    300000     400000     500000     600000     700000    800000   900000
                                                                            Task Size                                                                                                                       Task Size




  Timeliness of Execution
  -   RT-Axis2 achieves better exec. times for task mixes with high variety
  -   Unmod. Axis performs badly for the same due to best effort nature
  -   When requests are predominantly small both perform equally
  -   For very small tasks Unmod. Axis2 is better, i.e. no overhead
  -   RT-Axis2 deviations in expo. and pareto runs are intended.



                                                                       V. Gamini Abhaya et. al.                                      ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion                                         Eval. Summary Exec time comparison CPU Util.


CPU Utilisation
                                            1 - 5000000 (Uniform); 0.25sec - 5sec (Uniform)                                                               1 - 5000000 (Uniform); 0.25sec - 10sec (Uniform)
                        100                                                                                                            100
                                                                                               Axis2                                                                                                            Axis2

                        90                                                                                                             90

                        80                                                                                                             80

                        70                                                                                                             70
    CPU Utilization %




                                                                                                                   CPU Utilization %
                        60                                                                                                             60

                        50                                                                                                             50

                        40                                                                                                             40

                        30                                                                                                             30

                        20                                                                                                             20


                        10                                                                                                             10

                         0                                                                                                              0
                              0    100000   200000       300000      400000          500000   600000   700000                                0   500000        1e+06          1.5e+06          2e+06         2.5e+06    3e+06
                                                              Sample #                                                                                                       Sample #




  - RT-Axis2 achieves high utilisation times when tasks are rejected
  - Utilisation won’t reach 100% as thread scheduling is done
  - OS manages all scheduling finally




                                                           V. Gamini Abhaya et. al.                             ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion


What’s Next?


  1   Introduction

  2   Proposed Solution

  3   Implementation

  4   Emperical Evaluation

  5   Conclusion




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion


Conclusion

  Summary
      WS middleware lacks support for Real-time Apps
      For RT-Apps predictability is the key
      Proposed a model based on RT-scheduling principles
      Proposed algorithms based on RT-scheduling principles
      Live implementation using Axis2
      Solution enables acheving predictability even in dynamic environments
      (empirically evaluated)




                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion


Conclusion

  Summary
       WS middleware lacks support for Real-time Apps
       For RT-Apps predictability is the key
       Proposed a model based on RT-scheduling principles
       Proposed algorithms based on RT-scheduling principles
       Live implementation using Axis2
       Solution enables acheving predictability even in dynamic environments
       (empirically evaluated)


  * This is just the first step!
  * Way Ahead...?




                       V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion


Acknowledgements

  * Sun Microsystems - For providing academic licenses for RTSJ




                      V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings
Intro Solution Impl. Eval. Conclusion




                   Thank You !




Comments & Questions ?
              V. Gamini Abhaya et. al.   ICSOC 2009 - pages 364-372 in proceedings

Mais conteúdo relacionado

Semelhante a Achieving Predictability and Service Differentiation in Web Services

Building Web Services Middleware with Predictable Service Execution
Building Web Services Middleware with Predictable Service Execution Building Web Services Middleware with Predictable Service Execution
Building Web Services Middleware with Predictable Service Execution Vidura Gamini Abhaya
 
Bugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfBugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfNitisak Mooltreesri
 
Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...
Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...
Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...Vidura Gamini Abhaya
 
digiQC testimonial of a solar company
digiQC testimonial of a solar companydigiQC testimonial of a solar company
digiQC testimonial of a solar companyAshishMaheshwari76
 
digiQC testimonial of solar companies
digiQC testimonial  of solar companiesdigiQC testimonial  of solar companies
digiQC testimonial of solar companiesAshishMaheshwari76
 
CTD for client signoff and early requirements validation - 11th IEEE SW Eng...
CTD for client signoff and early requirements validation   - 11th IEEE SW Eng...CTD for client signoff and early requirements validation   - 11th IEEE SW Eng...
CTD for client signoff and early requirements validation - 11th IEEE SW Eng...Saritha Route
 
Chandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan Jai
 
CS640_Thesis_AbulAalaAlamsBari13250849
CS640_Thesis_AbulAalaAlamsBari13250849CS640_Thesis_AbulAalaAlamsBari13250849
CS640_Thesis_AbulAalaAlamsBari13250849Almas Bari
 
User Acceptance Testing in the Testing Center of Excellence
User Acceptance Testing in the Testing Center of ExcellenceUser Acceptance Testing in the Testing Center of Excellence
User Acceptance Testing in the Testing Center of ExcellenceTechWell
 
A Survey on Batch Auditing Systems for Cloud Storage
A Survey on Batch Auditing Systems for Cloud StorageA Survey on Batch Auditing Systems for Cloud Storage
A Survey on Batch Auditing Systems for Cloud StorageIRJET Journal
 
Sumi jain_Resume
Sumi jain_ResumeSumi jain_Resume
Sumi jain_Resumesumi jain
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation WorkshopJules Pierre-Louis
 
Testing Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTesting Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTechWell
 
IRJET- Efficiency Enhancement by Reducing Production and Machining Time
IRJET-  	  Efficiency Enhancement by Reducing Production and Machining TimeIRJET-  	  Efficiency Enhancement by Reducing Production and Machining Time
IRJET- Efficiency Enhancement by Reducing Production and Machining TimeIRJET Journal
 
About Indium Software and Its Service Portfolio
About Indium Software and Its Service PortfolioAbout Indium Software and Its Service Portfolio
About Indium Software and Its Service PortfolioIndium Software
 

Semelhante a Achieving Predictability and Service Differentiation in Web Services (20)

Building Web Services Middleware with Predictable Service Execution
Building Web Services Middleware with Predictable Service Execution Building Web Services Middleware with Predictable Service Execution
Building Web Services Middleware with Predictable Service Execution
 
sepg402
sepg402sepg402
sepg402
 
Bugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perfBugday bkk-2014 nitisak-auto_perf
Bugday bkk-2014 nitisak-auto_perf
 
Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...
Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...
Using Real-Time Scheduling Principles in Web Service Clusters to Achieve Pred...
 
digiQC testimonial of a solar company
digiQC testimonial of a solar companydigiQC testimonial of a solar company
digiQC testimonial of a solar company
 
digiQC testimonial of solar companies
digiQC testimonial  of solar companiesdigiQC testimonial  of solar companies
digiQC testimonial of solar companies
 
Cloud Computing Project
Cloud Computing ProjectCloud Computing Project
Cloud Computing Project
 
CTD for client signoff and early requirements validation - 11th IEEE SW Eng...
CTD for client signoff and early requirements validation   - 11th IEEE SW Eng...CTD for client signoff and early requirements validation   - 11th IEEE SW Eng...
CTD for client signoff and early requirements validation - 11th IEEE SW Eng...
 
Chandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_OracleChandan_3.7 Years of Experience_Oracle
Chandan_3.7 Years of Experience_Oracle
 
Karthik Subbu Resume
Karthik Subbu ResumeKarthik Subbu Resume
Karthik Subbu Resume
 
CS640_Thesis_AbulAalaAlamsBari13250849
CS640_Thesis_AbulAalaAlamsBari13250849CS640_Thesis_AbulAalaAlamsBari13250849
CS640_Thesis_AbulAalaAlamsBari13250849
 
Resume
ResumeResume
Resume
 
User Acceptance Testing in the Testing Center of Excellence
User Acceptance Testing in the Testing Center of ExcellenceUser Acceptance Testing in the Testing Center of Excellence
User Acceptance Testing in the Testing Center of Excellence
 
A Survey on Batch Auditing Systems for Cloud Storage
A Survey on Batch Auditing Systems for Cloud StorageA Survey on Batch Auditing Systems for Cloud Storage
A Survey on Batch Auditing Systems for Cloud Storage
 
Sumi jain_Resume
Sumi jain_ResumeSumi jain_Resume
Sumi jain_Resume
 
DevOPs Transformation Workshop
DevOPs Transformation WorkshopDevOPs Transformation Workshop
DevOPs Transformation Workshop
 
Testing Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the CloudTesting Applications—For the Cloud and in the Cloud
Testing Applications—For the Cloud and in the Cloud
 
Prameela Ladi
Prameela LadiPrameela Ladi
Prameela Ladi
 
IRJET- Efficiency Enhancement by Reducing Production and Machining Time
IRJET-  	  Efficiency Enhancement by Reducing Production and Machining TimeIRJET-  	  Efficiency Enhancement by Reducing Production and Machining Time
IRJET- Efficiency Enhancement by Reducing Production and Machining Time
 
About Indium Software and Its Service Portfolio
About Indium Software and Its Service PortfolioAbout Indium Software and Its Service Portfolio
About Indium Software and Its Service Portfolio
 

Último

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfOverkill Security
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...apidays
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusZilliz
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWERMadyBayot
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 

Último (20)

Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Achieving Predictability and Service Differentiation in Web Services

  • 1. Intro Solution Impl. Eval. Conclusion Achieving Predictability and Service Differentiation in Web Services Vidura Gamini Abhaya Prof. Zahir Tari and Assoc. Prof. Peter Bertok Distributed Systems and Networking Group School of Computer Science and IT RMIT University Melbourne, Australia December 16, 2009 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 2. Intro Solution Impl. Eval. Conclusion Agenda 1 Introduction 2 Proposed Solution 3 Implementation 4 Emperical Evaluation 5 Conclusion V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 3. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope What’s Next? 1 Introduction Motivation Real-time Applications Research Goals and Scope 2 Proposed Solution 3 Implementation 4 Emperical Evaluation 5 Conclusion V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 4. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Motivation Research on QoS fails to guarantee predictability in service execution. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 5. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Motivation Research on QoS fails to guarantee predictability in service execution. Assumptions are made on achieving QoS levels. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 6. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Motivation Research on QoS fails to guarantee predictability in service execution. Assumptions are made on achieving QoS levels. WS architectures and supporting infrastructures lack support for predictability. E.g. - SOAP engines and App Servers service requests in a best effort manner. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 7. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Motivation Research on QoS fails to guarantee predictability in service execution. Assumptions are made on achieving QoS levels. WS architectures and supporting infrastructures lack support for predictability. E.g. - SOAP engines and App Servers service requests in a best effort manner. Design goals are to increase throughput by concurrent processing. No. of requests served parallely ∝ Time taken to service a request V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 8. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Motivation Research on QoS fails to guarantee predictability in service execution. Assumptions are made on achieving QoS levels. WS architectures and supporting infrastructures lack support for predictability. E.g. - SOAP engines and App Servers service requests in a best effort manner. Design goals are to increase throughput by concurrent processing. Apps. with real-time requirements cannot make use of web services. Real-time applications ⇒ require predictability V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 9. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Real-time Applications [9] Characteristics V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 10. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Real-time Applications [9] Characteristics Real-time computing = Super Fast computing (Instantaneous) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 11. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Real-time Applications [9] Misconceptions Real-time computing = Super Fast computing (Instantaneous) X Characteristics Predictability! - A correct result obtained too late isn’t useful Speed of execution is less important V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 12. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Real-time Applications [9] Misconceptions Real-time computing = Super Fast computing (Instantaneous) X Characteristics Predictability! - A correct result obtained too late isn’t useful Speed of execution is less important Should not sacrifice the deadline of an important task for the sake of another (even if it has to be rejected) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 13. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Real-time Applications [9] Misconceptions Real-time computing = Super Fast computing (Instantaneous) X Characteristics Predictability! - A correct result obtained too late isn’t useful Speed of execution is less important Should not sacrifice the deadline of an important task for the sake of another (even if it has to be rejected) Examples Nuclear plant control systems, Avionics system, Factory floor control systems V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 14. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Research... Goals - Enable the use of web services as a middleware in applications with real-time requirements - Means of achieving execution time QoS for non real-time applications. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 15. Intro Solution Impl. Eval. Conclusion Motivation Real-time Apps Goals and Scope Research... Goals - Enable the use of web services as a middleware in applications with real-time requirements - Means of achieving execution time QoS for non real-time applications. Scope Supporting real-time applications requires predictability in, - Message processing and service execution - Network communication In the context of this research, only execution level predictability is considered. No transmission delays and contentions are assumed at the network level. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 16. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. What’s Next? 1 Introduction 2 Proposed Solution Introduction of a Deadline Admission Control Schedulability Check Scheduling Algorithm 3 Implementation 4 Emperical Evaluation 5 Conclusion V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 17. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Introduction of a Deadline Definition Absolute time period the request must be serviced within V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 18. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Introduction of a Deadline Definition Absolute time period the request must be serviced within Communicated to the server using SOAP headers V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 19. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Admission Control Challenges 1 No prior information about requests and their arrival 2 Difficult to schedule them to meet deadlines V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 20. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Admission Control Challenges 1 No prior information about requests and their arrival 2 Difficult to schedule them to meet deadlines Therefore... It is impossible to accept all requests and still meet all their deadlines V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 21. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Admission Control Challenges 1 No prior information about requests and their arrival 2 Difficult to schedule them to meet deadlines Therefore... It is impossible to accept all requests and still meet all their deadlines - Only accept requests that we can meet the deadlines - Decision made runtime: based on requested and available CPU time Contribution An on-the-fly admission control mechanism based on real-time scheduling principles V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 22. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Schedulability Check Step 1 Ensure deadline requirement of new task could be met a a (Based on equations 7,8 & 9 of the model) * The execution time requirement of the new task is obtained either as a grouped average of the previous executions or offline profiled execution time V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 23. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Schedulability Check Step 2 Ensure new task does not compromise the deadlines of already accepted tasks a The effect of the new task must be checked individually, on each task finishing thereafter a (Based on equations 10,11 & 12 of the model) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 24. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Scheduling Algorithm Accepted tasks are scheduled in the order of decreasing deadlines (EDF) This ensures all tasks meet their deadline requirement Schedulable bound of EDF is 100% V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 25. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 26. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = (0 + 6)ms = 6ms Proc. Demand After = (0 + 4)ms = 4ms Total Proc. Demand = (6 + 4)ms = 10ms Loading Factor = 10 (25−1) = 0.4167 0.4167 < 1 (Accept Request) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 27. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 T3 3 3 7 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = 3ms (0 + 3) Proc. Demand up to T2 = 3ms (0 + 3) Total Proc. Demand = 7ms (3 + 4) Loading Factor = 7 (20−3) 0.42 < 1 (Continue on to next check) Proc. Demand up to T1 = 8ms (4 + 4) Total Proc. Demand = 11ms (3 + 8) Loading Factor = 11 (25−3) 0.5 < 1 (Accept request) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 28. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 T3 3 3 7 T4 4 4 7 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = 2ms (0 + 2) Proc. Demand up to T2 = 4ms (0 + 4) Proc. Demand up to T4 = 6ms (2 + 4) Total Proc. Demand = 10ms (6 + 4) Loading Factor = 6 Loading Factor = 10 (11−4) (20−4) 0.86 < 1 (Continue...) 0.47 > 1 (Continue...) Proc. Demand up to T1 = 8ms (4 + 4) Total Proc. Demand = 14ms (6 + 8) Loading Factor = 14 (25−4) 0.737 < 1 (Accept request) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 29. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 T3 3 3 7 T4 4 4 7 T5 7 2 3 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = 2ms (0 + 2) Proc. Demand up to T4 = 3ms (0 + 3) Total Proc. Demand = 5ms (2 + 3) Loading Factor = 5 (11−7) 1.25 < 1 (Reject Request) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 30. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 T3 3 3 7 T4 4 4 7 T5 7 2 3 T6 8 7 10 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = 2ms (0 + 2) Total Proc. Demand up to T6 = 9ms (2 + 7) Loading Factor = 9 (18−8) 0.9 < 1 (Continue...) Proc. Demand up to T2 = 4ms (0 + 4) Total Proc. Demand = 13ms (9 + 4) Loading Factor = 13 (20−8) 1.083 < 1 (Reject Request) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 31. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 T3 3 3 7 T4 4 4 7 T5 7 2 3 T6 8 7 10 T7 9 2 6 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = 1ms (0 + 1) Proc. Demand up to T2 = 4ms (0 + 4) Proc. Demand up to T6 = 3ms (1 + 2) Total Proc. Demand = 7ms (3 + 4) Loading Factor = 3 Loading Factor = 7 (15−9) (20−9) 0.5 < 1 (Continue...) 0.636 > 1 (Continue...) Proc. Demand up to T1 = 8ms (4 + 4) Total Proc. Demand = 15ms (7 + 8) Loading Factor = 15 (25−9) 0.9375 < (Request Accepted) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 32. Intro Solution Impl. Eval. Conclusion Deadline Admission Control Sched. Check Sched. Algo. Sample Scenario Task ST ET D T1 0 5 25 T2 1 6 19 T3 3 3 7 T4 4 4 7 T5 7 2 3 T6 8 7 10 T7 9 2 6 ST - Start Time (ms) ET - Execution Time (ms) D - Deadline (ms) Schedulability Check calculation Proc. Demand Within = 1ms (0 + 1) Proc. Demand up to T2 = 4ms (0 + 4) Proc. Demand up to T6 = 3ms (1 + 2) Total Proc. Demand = 7ms (3 + 4) Loading Factor = 3 Loading Factor = 7 (15−9) (20−9) 0.5 < 1 (Continue...) 0.636 > 1 (Continue...) Proc. Demand up to T1 = 8ms (4 + 4) Total Proc. Demand = 15ms (7 + 8) Loading Factor = 15 (25−9) 0.9375 < (Request Accepted) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 33. Intro Solution Impl. Eval. Conclusion Overview Components Enhancements What’s Next? 1 Introduction 2 Proposed Solution 3 Implementation Overview System Components Enhancements to Axis2 4 Emperical Evaluation 5 Conclusion V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 34. Intro Solution Impl. Eval. Conclusion Overview Components Enhancements Realising the model Overview Real-life implementation rather than a simulation Enhance existing web services middleware Apache Axis2 - Widely used and Open source SOAP engine Axis2 Java implementation selected V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 35. Intro Solution Impl. Eval. Conclusion Overview Components Enhancements Realising the model Overview Real-life implementation rather than a simulation Enhance existing web services middleware Apache Axis2 - Widely used and Open source SOAP engine Axis2 Java implementation selected Unsuitability of Standard Java for RT Apps. [Wang and Baglodi, 2002] Garbage Collector (GC) can pre-empt any running thread Cannot control when GC runs Priority model doesn’t properly map to OS level priorities Cannot prevent/resolve priority inversions On-demand Just-in-time compilation and class loading V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 36. Intro Solution Impl. Eval. Conclusion Overview Components Enhancements System Components Development Platform Real-time Specification for Java (RTSJ) ver 2.1a Additional thread priority levels mapping to OS priorities Priority levels GC cannot interrupt Pre-emptive Real-time scheduler Ability to compile ahead and pre-load classes a http://java.sun.com/javase/technologies/realtime/ V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 37. Intro Solution Impl. Eval. Conclusion Overview Components Enhancements System Components Development Platform Real-time Specification for Java (RTSJ) ver 2.1a Additional thread priority levels mapping to OS priorities Priority levels GC cannot interrupt Pre-emptive Real-time scheduler Ability to compile ahead and pre-load classes a http://java.sun.com/javase/technologies/realtime/ Operating System Sun Solaris version 10 update 08/05 High-precision clocks Hooks for dev platforms to use RT features V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 38. Intro Solution Impl. Eval. Conclusion Overview Components Enhancements Enhancements to Apache Axis2 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 39. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. What’s Next? 1 Introduction 2 Proposed Solution 3 Implementation 4 Emperical Evaluation Summary of Results Execution time Comparison CPU Utilisation 5 Conclusion V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 40. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Experimental Results Metrics - Percent. of tasks accepted by RT-Axis2 - Percent. of deadlines met by RT-Axis2 and Unmod. Axis2 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 41. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Experimental Results Metrics - Percent. of tasks accepted by RT-Axis2 - Percent. of deadlines met by RT-Axis2 and Unmod. Axis2 Comparison of RT-Axis2 and Unmod Axis2 Real-time Axis2 Unmodified Axis2 Distribution Inter-arrival % Acc. % D. Mis. % D. Met % D. Mis. % D. Met time(sec) 0.25 - 5 41.8 0 100 96.6 3.4 Uniform 0.25 - 10 81.2 0 100 83.6 16.4 Bnd. Expo. 0.25 - 2 62.5 0.1 99.9 42.6 57.4 0.25 - 5 99.3 0 100 0 100 λ = 10−6 0.25 - 10 100 0 100 0 100 Bnd. Expo. 0.25 - 2 100 0 100 0 100 0.25 - 5 100 0 100 0 100 λ = 10−5 0.25 - 10 100 0 100 0 100 0.25 - 2 100 0.3 99.7 0 100 Bnd. Pareto 0.25 - 5 100 0.1 99.9 0 100 α = 0.5 0.25 - 10 100 0 100 0 100 0.25 - 2 99.4 0 100 0 100 Bnd. Pareto 0.25 - 5 99.9 0 100 0 100 α = 0.05 0.25 - 10 100 0 100 0 100 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 42. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Summary of Experimental Results Task Acceptance - RT-Axis2 accepts 42-100% of tasks for a good mix of tasks. - Expo and Pareto runs = 100% acceptance due to high concentration of small tasks. - Can fit more small tasks into a given period of time Real-time Axis2 Unmodified Axis2 Distribution Inter-arrival % Acc. % D. Mis. % D. Met % D. Mis. % D. Met time(sec) 0.25 - 5 41.8 0 100 96.6 3.4 Uniform 0.25 - 10 81.2 0 100 83.6 16.4 Bnd. Expo. 0.25 - 2 62.5 0.1 99.9 42.6 57.4 0.25 - 5 99.3 0 100 0 100 λ = 10−6 0.25 - 10 100 0 100 0 100 Bnd. Expo. 0.25 - 2 100 0 100 0 100 0.25 - 5 100 0 100 0 100 λ = 10−5 0.25 - 10 100 0 100 0 100 0.25 - 2 100 0.3 99.7 0 100 Bnd. Pareto 0.25 - 5 100 0.1 99.9 0 100 α = 0.5 0.25 - 10 100 0 100 0 100 0.25 - 2 99.4 0 100 0 100 Bnd. Pareto 0.25 - 5 99.9 0 100 0 100 α = 0.05 0.25 - 10 100 0 100 0 100 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 43. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Summary of Experimental Results Task Acceptance - RT-Axis2 accepts 42-100% of tasks for a good mix of tasks. - Expo and Pareto runs = 100% acceptance due to high concentration of small tasks. - Can fit more small tasks into a given period of time Real-time Axis2 Unmodified Axis2 Distribution Inter-arrival % Acc. % D. Mis. % D. Met % D. Mis. % D. Met time(sec) 0.25 - 5 41.8 0 100 96.6 3.4 Uniform 0.25 - 10 81.2 0 100 83.6 16.4 Bnd. Expo. 0.25 - 2 62.5 0.1 99.9 42.6 57.4 0.25 - 5 99.3 0 100 0 100 λ = 10−6 0.25 - 10 100 0 100 0 100 Bnd. Expo. 0.25 - 2 100 0 100 0 100 0.25 - 5 100 0 100 0 100 λ = 10−5 0.25 - 10 100 0 100 0 100 0.25 - 2 100 0.3 99.7 0 100 Bnd. Pareto 0.25 - 5 100 0.1 99.9 0 100 α = 0.5 0.25 - 10 100 0 100 0 100 0.25 - 2 99.4 0 100 0 100 Bnd. Pareto 0.25 - 5 99.9 0 100 0 100 α = 0.05 0.25 - 10 100 0 100 0 100 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 44. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Summary of Experimental Results Impact of Inter-arrival rate - Acceptance rate ∝ Inter-arrival time - Smaller inter-arrival times leads to task build-up at the server - Larger inter-arrival times means, on avg. more tasks completed by the next arrival Real-time Axis2 Unmodified Axis2 Distribution Inter-arrival % Acc. % D. Mis. % D. Met % D. Mis. % D. Met time(sec) 0.25 - 5 41.8 0 100 96.6 3.4 Uniform 0.25 - 10 81.2 0 100 83.6 16.4 Bnd. Expo. 0.25 - 2 62.5 0.1 99.9 42.6 57.4 0.25 - 5 99.3 0 100 0 100 λ = 10−6 0.25 - 10 100 0 100 0 100 Bnd. Expo. 0.25 - 2 100 0 100 0 100 0.25 - 5 100 0 100 0 100 λ = 10−5 0.25 - 10 100 0 100 0 100 0.25 - 2 100 0.3 99.7 0 100 Bnd. Pareto 0.25 - 5 100 0.1 99.9 0 100 α = 0.5 0.25 - 10 100 0 100 0 100 0.25 - 2 99.4 0 100 0 100 Bnd. Pareto 0.25 - 5 99.9 0 100 0 100 α = 0.05 0.25 - 10 100 0 100 0 100 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 45. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Summary of Experimental Results Deadline Achievement - RT-Axis2 results in all accepted tasks achieving deadlines, for a good task mix - Due to best effort nature, Unmod Axis2 misses majority of deadlines for the same - For very small tasks Unmod Axis2 performs marginally better i.e. due to overhead in RT-Axis2 Real-time Axis2 Unmodified Axis2 Distribution Inter-arrival % Acc. % D. Mis. % D. Met % D. Mis. % D. Met time(sec) 0.25 - 5 41.8 0 100 96.6 3.4 Uniform 0.25 - 10 81.2 0 100 83.6 16.4 Bnd. Expo. 0.25 - 2 62.5 0.1 99.9 42.6 57.4 0.25 - 5 99.3 0 100 0 100 λ = 10−6 0.25 - 10 100 0 100 0 100 Bnd. Expo. 0.25 - 2 100 0 100 0 100 0.25 - 5 100 0 100 0 100 λ = 10−5 0.25 - 10 100 0 100 0 100 0.25 - 2 100 0.3 99.7 0 100 Bnd. Pareto 0.25 - 5 100 0.1 99.9 0 100 α = 0.5 0.25 - 10 100 0 100 0 100 0.25 - 2 99.4 0 100 0 100 Bnd. Pareto 0.25 - 5 99.9 0 100 0 100 α = 0.05 0.25 - 10 100 0 100 0 100 V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 46. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Execution time comparison 1 - 5000000 (Uniform); 0.25sec - 5sec (Uniform) 1 - 5000000 (Uniform); 0.25sec - 10sec (Uniform) 600000 1.4e+06 Real-tme Axis2 Real-tme Axis2 Unmodified Axis2 Unmodified Axis2 1.2e+06 500000 1e+06 400000 Execution Time (ms) Execution Time (ms) 800000 300000 600000 200000 400000 100000 200000 0 0 0 500000 1e+06 1.5e+06 2e+06 2.5e+06 3e+06 3.5e+06 4e+06 4.5e+06 5e+06 0 500000 1e+06 1.5e+06 2e+06 2.5e+06 3e+06 3.5e+06 4e+06 4.5e+06 5e+06 Task Size Task Size Timeliness of Execution - RT-Axis2 achieves better exec. times for task mixes with high variety - Unmod. Axis performs badly for the same due to best effort nature - When requests are predominantly small both perform equally - For very small tasks Unmod. Axis2 is better, i.e. no overhead - RT-Axis2 deviations in expo. and pareto runs are intended. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 47. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. Execution time comparison 1 - 5000000 (Bounded Pareto) A - 0.05; 0.25sec - 2sec (Uniform) 1 - 5000000 (Bounded Pareto) A - 0.5; 0.25sec - 2sec (Uniform) 35000 2500 Real-tme Axis2 Real-tme Axis2 Unmodified Axis2 Unmodified Axis2 30000 2000 25000 Execution Time (ms) Execution Time (ms) 1500 20000 15000 1000 10000 500 5000 0 0 0 500000 1e+06 1.5e+06 2e+06 2.5e+06 3e+06 3.5e+06 4e+06 4.5e+06 5e+06 0 100000 200000 300000 400000 500000 600000 700000 800000 900000 Task Size Task Size Timeliness of Execution - RT-Axis2 achieves better exec. times for task mixes with high variety - Unmod. Axis performs badly for the same due to best effort nature - When requests are predominantly small both perform equally - For very small tasks Unmod. Axis2 is better, i.e. no overhead - RT-Axis2 deviations in expo. and pareto runs are intended. V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 48. Intro Solution Impl. Eval. Conclusion Eval. Summary Exec time comparison CPU Util. CPU Utilisation 1 - 5000000 (Uniform); 0.25sec - 5sec (Uniform) 1 - 5000000 (Uniform); 0.25sec - 10sec (Uniform) 100 100 Axis2 Axis2 90 90 80 80 70 70 CPU Utilization % CPU Utilization % 60 60 50 50 40 40 30 30 20 20 10 10 0 0 0 100000 200000 300000 400000 500000 600000 700000 0 500000 1e+06 1.5e+06 2e+06 2.5e+06 3e+06 Sample # Sample # - RT-Axis2 achieves high utilisation times when tasks are rejected - Utilisation won’t reach 100% as thread scheduling is done - OS manages all scheduling finally V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 49. Intro Solution Impl. Eval. Conclusion What’s Next? 1 Introduction 2 Proposed Solution 3 Implementation 4 Emperical Evaluation 5 Conclusion V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 50. Intro Solution Impl. Eval. Conclusion Conclusion Summary WS middleware lacks support for Real-time Apps For RT-Apps predictability is the key Proposed a model based on RT-scheduling principles Proposed algorithms based on RT-scheduling principles Live implementation using Axis2 Solution enables acheving predictability even in dynamic environments (empirically evaluated) V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 51. Intro Solution Impl. Eval. Conclusion Conclusion Summary WS middleware lacks support for Real-time Apps For RT-Apps predictability is the key Proposed a model based on RT-scheduling principles Proposed algorithms based on RT-scheduling principles Live implementation using Axis2 Solution enables acheving predictability even in dynamic environments (empirically evaluated) * This is just the first step! * Way Ahead...? V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 52. Intro Solution Impl. Eval. Conclusion Acknowledgements * Sun Microsystems - For providing academic licenses for RTSJ V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings
  • 53. Intro Solution Impl. Eval. Conclusion Thank You ! Comments & Questions ? V. Gamini Abhaya et. al. ICSOC 2009 - pages 364-372 in proceedings