190 likes | 403 Views
WP3 meeting in Milan, November 30. Riadh BEN HALIMA & Khalil DRIRA LAAS-CNRS. Outline. Structural Reconfiguration Architecture Prototype implementation Grid experimentation First experience with Gird5000 Some Monitoring Data analysis. Structural reconfiguration.
E N D
WP3 meeting in Milan, November 30 Riadh BEN HALIMA & Khalil DRIRA LAAS-CNRS
Outline • Structural Reconfiguration • Architecture • Prototype implementation • Grid experimentation • First experience with Gird5000 • Some Monitoring Data analysis
Structural reconfiguration Substitution & Wrapping
Structural Reconfiguration Module Substitution Mgr Wrapping Mgr Substitution scenario WS3 Provider Interceptor Substitution Mgr NetWork WS1 Provider (mismatch) WS Requester ? ? Deployment WS2 Provider (substitute)
Structural Reconfiguration Module: Substitution WS1-URL WS2-wsdl Input Substitution Mgr Generation of required files for a WS2 Client (by Axis) WSDL Compiler WS2 Client required Java files Compiling generated files JRC (JAVA Runtime Compiler) WS2 Client required Class files Preparing requests background for each WS2 Methods XML Parser Requests ready for WS2 Methods Generation of interceptor code ICG (Interceptor Code Generator) Interceptor Java files Compiling generated files JRC (JAVA Runtime Compiler) Interceptor Class files Deployment of interceptor IDE (Interceptor Deployment Engin) Interceptor integrated with WS1 Updating Tomcat WS list WSTM (Web Service Tomcat Manager) Interceptor can react to WS1 request
Structural Reconfiguration Module: Wrapping Schema parameters WS1-URL WS2-wsdl Input Wrapping Mgr Generation of required files for a WS2 Client WSDL Compiler WS2 Client required Java files Compiling generated files JRC (JAVA Runtime Compiler) WS2 Client required Class files Use of “Schema parameters” Preparing requests background for each WS2 Methods XML Parser Requests ready for WS2 Methods Generation of interceptor code ICG (Interceptor Code Generator) Interceptor Java files Compiling generated files JRC (JAVA Runtime Compiler) Interceptor Class files Deployment of interceptor IDE (Interceptor Deployment Engin) Interceptor integrated with WS1 Updating Tomcat WS list WSTM (Web Service Tomcat Manager) Interceptor can react to WS1 request
Parameters extractor WSDI (Web Service Dynamic Invocation) Substitution Substitution Interceptor Processing SOAP request Input Interceptor Extract Client Input form SOAP request Extract parameter values from SOAP WS2 dynamic invocation using Java Reflect Send req. to WS2 and wait for resp. Encapsulation of WS2 result invocation in SOAP Response Put WS2 resp. into SOAP resp. Output SOAP response
Interaction Manager (Req. Side Interceptor) Interaction Manager (Req. Side Interceptor) QoS Monitoring Engine QoS Monitoring Engine WS Requester2 (Client2) WS Requester1 (Client1) WS Provider2 (substitute) WS Provider1 Diagnostic Engine QoS Measure (Prov. Interceptor) Reconfiguration & Repair Module WS-Diamond Architecture Msg log Response Message QoS Measure & Monitoring Module Pass/ Wait Alarm log Request Message Response+QoS Message Reponse+QoS Message Request+QoS Message Alarms Pass/ Wait Diagnosis and Recovery Module Diagnosis Diag. log Repair Actions Recovery Action Selector Alarms Pass/ Wait Alarm log Pass/ Wait Response+QoS Message Response Message Reponse+QoS Message Msg log Request Message
Grid5000 Experimentation First Step
Monitored Metric: Response Time Service Provider Trespp InterceptorProvider Treqp NetWork 2.Response 1.Request Trespc InterceptorConsumer Treqc Service Consumer Tcommunication= (Treqp – Treqc) + (Trespc - Trespp) Texecution= Trespp - Treqp
Cons1_int Cons2_int Cons3_int Prov2_int Prov1_int Prov3_int Centralized Monitoring Service Provider1 Service Provider2 Service Provider3 Monitoring WS Internet Service Consumer1 Service Consumer2 Service Consumer3
Experience architecture(Response Time measurement) • Grid reservation of 382 nodes • 380 Clients • 1 WS server (Tomcat) • 1 Monitoring server (Tomcat + Mysql) • Experience duration: • Start: Sat Nov 25 17:59:56 • End : Mon Nov 27 09:40:59 • Duration: 01 day, 16h:42:00
Some experimentation results • Record number (= request number) • 30 925 616 records • (8 fields: Num_invocation,Node_name,T1,T2,T3,T4, Texecution, Tcommunication) • Monitoring Data size • 2,5~3 Gb • Invocation average • 211,067540268 requests/second
Some values: Execution_Time • Execution Time: • Min = 0 ms • AVG = 1.2172652458561 ms • Max = 1044 ms • Execution_Time >1000 ==> 3 requests • Execution_Time >100 ==> 269 • Execution_Time >10 ==> 108717
Some values: Communication_Time • Communication Time: • Min = 10 ms • AVG = 38.35554087337 ms • Max = 45742 ms • Communication_Time >10000 ==> 424 • Communication_Time >1000 ==> 11113 • Communication_Time >100 ==> 100099
Some values: (Execution_Time+Communication_Time) • Execution_Time+Communication_Time • Min Value= 7 ms • AVG Value= 39.417156185345 ms • Max Value= 45743 ms
Future Work • To vary Client number • To Measure interception time • To Deploy and validate the structural reconfiguration when necessary