Utilizing PCM for Online Capacity Management of Component-Based Software Systems
|
|
|
- Simon Barrett
- 10 years ago
- Views:
Transcription
1 Utilizing PCM for Online Capacity Management of Component-Based Software Systems André van Hoorn Software Engineering Group, University of Kiel Nov. 18, Palladio Days, Karlsruhe André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 1 / 19
2 Context of this Work Online Capacity Management for Increased Resource Efficiency Introduction Adaptive Capacity Management Business-critical software systems André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 2 / 19
3 Context of this Work Online Capacity Management for Increased Resource Efficiency Introduction Adaptive Capacity Management Business-critical software systems Quality of service (performance, availability,... ) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 2 / 19
4 Context of this Work Online Capacity Management for Increased Resource Efficiency Introduction. Adaptive Capacity Management Business-critical software systems Quality of service (performance, availability,... ) Varying workloads + static capacity management André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 2 / 19
5 Context of this Work Online Capacity Management for Increased Resource Efficiency Introduction. Adaptive Capacity Management Problem: Overprovisioning unnecessarily high operating costs Underutilized resources during medium/low workload periods Goal: Increase resource efficiency while meeting SLAs B SLAstic [van Hoorn et al. 2009a, van Hoorn 2011]: Online capacity management employing architecture-based runtime reconfiguration André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 2 / 19
6 Agenda SLAstic Approach 1 Introduction Adaptive Capacity Management 2 SLAstic Approach 3 Extracting SLAstic Models via Dynamic Analysis 4 Utilizing PCM for SLAstic 5 Conclusions André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 3 / 19
7 SLAstic Runtime Reconfiguration Operations SLAstic Approach Overview 1 (De-)Replication of Software Components C 2 C 2 C 2 C 1 C 3 C 1 C 3 2 Migration of Software Components C 2 C 2 C 3 C 1 C 3 C 1 3 (De-)Allocation of Execution Containers N 1... N m N m+1 N 1... N m André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 4 / 19
8 SLAstic Runtime Reconfiguration Operations SLAstic Approach Overview 1 (De-)Replication of Software Components replicate (component: AssemblyComponent, to: ExecutionContainer) dereplicate (component: DeploymentComponent) 2 Migration of Software Components migrate (component: DeploymentComponent, to: ExecutionContainer) 3 (De-)Allocation of Execution Containers deallocate (container: ExecutionContainer) allocate (containertype: ExecutionContainerType) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 4 / 19
9 Online Capacity Management Framework SLAstic Approach Overview instrumented, runtime reconfigurable s/w system... instrumentation SLAstic model SLAstic. MONITORING raw monitoring records monitoring events SLAstic.CONTROL SLAstic. RECONFIGURATION reconfiguration actions reconfiguration plans architecture technology initialization extraction SLAstic model Analysis online adaptation engine André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 5 / 19
10 M SLAstic.MONITORING utilizes Kieker [van Hoorn et al. 2009b] Online Capacity Management Framework (cont d) SLAstic Approach Overview SLAstic. MONITORING e.g., AOP-based method call interception M e.g., trace information, workload, response times, resource utilization, loop counts e.g., architecture reconstruction, performance evaluation, online adaptation control, failure diagnosis M M M M M Analysis Plug-In Kieker.Monitoring Monitoring Record e.g., file system, database, Kieker.Analysis message-oriented middleware Monitoring Log/Stream André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 5 / 19
11 SLAstic.CONTROL (zoom-in) Online Capacity Management Framework (cont d) SLAstic Approach Overview SLAstic.CONTROL monitoring events Model Manager Model Updater SLAstic model reconfiguration plans Analysis Performance Evaluator Workload Forecaster Performance Predictor Adaptation Planner André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 5 / 19
12 Usage Scenarios of the SLAstic Framework Online Capacity Management Framework (cont d) SLAstic Approach Overview Monitoring log Monitoring log Monitoring log from from from case study case study case study JMeter/ Markov4JMeter Workload Generator Kieker. LogReplayer Log Replayer... Kieker. LogReplayer(RT) (Real time) Log Replayer SLAstic.SIM... Instrumented, runtime reconfigurable s/w system (or lab system) Instrumented, runtime reconfigurable s/w system (simulation) SLAstic. MONITORING SLAstic. RECONFIGURATION SLAstic. MONITORING SLAstic. RECONFIGURATION SLAstic. MONITORING SLAstic. RECONFIGURATION SLAstic.CONTROL SLAstic.CONTROL SLAstic.CONTROL 1 Online analysis (production/lab system) 2 Offline analysis (log replay) 3 Simulation-based analysis André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 6 / 19
13 Type Repository System Partition (cont d) SLAstic Approach Meta Model System Partition (also used as runtime model) 1 Type repository (e.g., component types, interfaces, connector types, execution container types) <<Interface>> IBookstore <<Provides>> Book searchbook() <<ConnectorType>> ConnectorTIBook <<ComponentType>> BookstoreT <<Requires>> <<Interface>> ICatalog Book getbook() <<Provides>> <<ComponentType>> CatalogT <<ConnectorType>> ConnectorTICatalog Example type repository <<ExecutionContainerType>> WebSrvT <<ExecutionContainerType>> AppSrvT André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 7 / 19
14 Component Assembly System Partition (cont d) SLAstic Approach Meta Model System Partition (also used as runtime model) 1 Type repository (e.g., component types, interfaces, connector types, execution container types) 2 Component assembly (e.g., assembly of components via connectors) <<AssemblyComponent>> bookstore <<ComponentType>> BookstoreT <<AssemblyConnector>> <<ConnectorType>> ConnectorTICatalog <<AssemblyComponent>> catalog <<ComponentType>> CatalogT Example component assembly André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 7 / 19
15 Execution Environment System Partition (cont d) SLAstic Approach Meta Model System Partition (also used as runtime model) 1 Type repository (e.g., component types, interfaces, connector types, execution container types) 2 Component assembly (e.g., assembly of components via connectors) 3 Execution environment (e.g., execution containers and interconnection via links) <<ExecutionContainer>> web1:websrvt <<ExecutionContainer>> app1:appsrvt <<ExecutionContainer>> web2:websrvt <<ExecutionContainer>> app2:appsrvt Example execution environment André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 7 / 19
16 Component deployment System Partition (cont d) SLAstic Approach Meta Model System Partition (also used as runtime model) 1 Type repository (e.g., component types, interfaces, connector types, execution container types) 2 Component assembly (e.g., assembly of components via connectors) 3 Execution environment (e.g., execution containers and interconnection via links) 4 Component deployment (mapping: assembly components containers) <<ExecutionContainer>> web1:websrvt <<AssemblyComponent>> bookstore <<ComponentType>> BookstoreT <<ExecutionContainer>> app1:appsrvt <<AssemblyComponent>> catalog <<ComponentType>> CatalogT <<ExecutionContainer>> web2:websrvt <<AssemblyComponent>> bookstore <<ComponentType>> BookstoreT <<ExecutionContainer>> app2:appsrvt <<AssemblyComponent>> catalog <<ComponentType>> CatalogT DeploymentComponent Example component deployment André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 7 / 19
17 SLAstic2PCM Transformation System Partition (cont d) SLAstic Approach Meta Model System Partition (also used as runtime model) 1 Type repository (e.g., component types, interfaces, connector types, execution container types) 2 Component assembly (e.g., assembly of components via connectors) 3 Execution environment (e.g., execution containers and interconnection via links) 4 Component deployment (mapping: assembly components containers) SLAstic2PCM transforms SLAstic model to PCM [Günther 2011] SLAstic-System-Modell - TypeRepository - ExecutionEnvironment - ComponentAssembly - ComponentDeployment SLAstic-Usage-Modell SLAstic2PCM Ausführung durch: - Eclipse-Launcher - Kommandozeile - Java-API PCM-Modell - ResourceType - Repository - ResourceEnvironment - Allocation - System - UsageModel N. Günther. Modellbasierte Laufzeit-Performance-Vorhersage für komponentenbasierte Softwarearchitekturen ( Model-based online performance prediction for component-based software architectures, in german), Nov Diploma Thesis, University of Kiel. André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 7 / 19
18 Adaptation/Reconfiguration Completions/Decorations SLAstic Approach Meta Model Completions/Decorations Adaptation / Reconfiguration (e.g., plans, operations, capabilities, properties) PCM-specific implementation of operations part of SLAstic.SIM [von Massow et al. 2011] R. von Massow, A. van Hoorn, and W. Hasselbring. Performance simulation of runtime reconfigurable component-based software architectures. In Proc. ECSA 11, vol of LNCS, pages Springer, Sept (As presented at Palladio Days 2010) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 8 / 19
19 Measurement Completions/Decorations (cont d) SLAstic Approach Meta Model Completions/Decorations Adaptation / Reconfiguration (e.g., plans, operations, capabilities, properties) Measurement (e.g., workload, timing, utilization) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 8 / 19
20 Usage Completions/Decorations (cont d) SLAstic Approach Meta Model Completions/Decorations Adaptation / Reconfiguration (e.g., plans, operations, capabilities, properties) Measurement (e.g., workload, timing, utilization) Usage (e.g., operation call frequencies, calling relationships) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 8 / 19
21 ... (e.g., cost profiles) Completions/Decorations (cont d) SLAstic Approach Meta Model Completions/Decorations Adaptation / Reconfiguration (e.g., plans, operations, capabilities, properties) Measurement (e.g., workload, timing, utilization) Usage (e.g., operation call frequencies, calling relationships)... e.g., cost profiles (not yet implemented) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 8 / 19
22 Agenda Extracting SLAstic Models via Dynamic Analysis 1 Introduction Adaptive Capacity Management 2 SLAstic Approach 3 Extracting SLAstic Models via Dynamic Analysis 4 Utilizing PCM for SLAstic 5 Conclusions André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 9 / 19
23 Model Extraction by Dynamic Analysis Extracting SLAstic Models via Dynamic Analysis 1 Raw monitoring records delivered by Kieker, e.g. OperationExecutionRecord (incl. timing & tracing information) ResourceUtilizationRecord and MemSwapUsageRecord 2 Processing of records by SLAstic.MONITORING 1 Possible abstraction of component/operation names etc. 2 Lookup/creation of architectural entities using ModelManager 3 Transformation of raw monitoring records into monitoring events 4 Send monitoring events to complex-event processing (CEP) engine 3 Trace reconstruction 1 TraceReconstructor registers match/recognize CEP statement to collect executions grouped by trace ID (online) 2 Send each reconstructed message trace to CEP engine 4 Update of system and usage model 1 UsageAndSystemModelUpdater registers CEP statement to collect valid message traces 2 Process each trace and update models using ModelManager André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 10 / 19
24 SPECjEnterprise2010 Model Extraction Example Extracting SLAstic Models via Dynamic Analysis <<execution container>> blade3 $ @22:..Inventory @9:..SupplierAuditSession @17:..SpecAction André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 11 / 19
25 Utilizing PCM in SLAstic Utilizing PCM for SLAstic 1 Simulation-based analysis SLAstic.SIM as substitute for real system Evaluation of approach, adaptation plans etc. 2 Runtime PCM instance decorated by SLAstic model 3 Online performance prediction (e.g., SLAstic.SIM) Instrumented, runtime reconfigurable s/w system (simulation) SLAstic. MONITORING SLAstic.SIM... SLAstic. RECONFIGURATION SLAstic.CONTROL Semi-automated extraction of PCM instances 1 Extraction of SLAstic instance by dyn. analysis 2 SLAstic2PCM transformation [Günther 2011] SLAstic-System-Modell - TypeRepository - ExecutionEnvironment - ComponentAssembly SLAstic2PCM Ausführung durch: - Eclipse-Launcher PCM-Modell - ResourceType - Repository - ResourceEnvironment 3 Assumption: Manual refinement/calibration (offline) - ComponentDeployment SLAstic-Usage-Modell - Kommandozeile - Java-API - Allocation - System - UsageModel André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 12 / 19
26 SLAstic.SIM Simulation of Reconfigurable PCM instances Utilizing PCM for SLAstic SLAstic.SIM instrumented, runtime reconfigurable s/w system... SLAstic. Monitoring SLAstic. Reconfiguration SLAstic model SLAstic.Control R. von Massow, A. van Hoorn, and W. Hasselbring. Performance simulation of runtime reconfigurable component-based software architectures. In Proc. ECSA 11, vol of LNCS, pages Springer, Sept (As presented at Palladio Days 2010) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 13 / 19
27 SLAstic.SIM Simulation of Reconfigurable PCM instances Utilizing PCM for SLAstic SLAstic.SIM SLAstic.SIM SimulationController ModelManager SimulationCore workload IMonitoring RecordReceiver Kieker. LogReplayer monitoring IMonitoringController SLAstic. Monitoring reconfiguration IReconfiguration PlanReceiver SLAstic. Reconfiguration Workload traces PCM instance SLAstic model SLAstic.Control Simulation driven by recorded (varying) workload Simulation of PCM models with SLAstic s reconfiguration capabilities (limitations in terms of supported PCM features) R. von Massow, A. van Hoorn, and W. Hasselbring. Performance simulation of runtime reconfigurable component-based software architectures. In Proc. ECSA 11, vol of LNCS, pages Springer, Sept (As presented at Palladio Days 2010) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 13 / 19
28 SLAstic2PCM Transformation [Günther 2011] Utilizing PCM for SLAstic SLAstic2PCM M2M Transformation SLAstic2PCM implemented as an ATL-based M2M transformation Kieker-FileSystem-Log SLAstic- Framework SLAstic- UsageModel SLAstic- SystemModel SLAstic2PCM PCM-Model 1 Transformation of SLAstic System Model to PCM counter parts pretty straight-forward SLAstic TypeRepository ComponentAssembly ExecutionEnvironment ComponentDeployment PCM Repository, ResourceRepository System ResourceEnvironment Allocation 2 Generation of RDSEFFs (detailed on next slide) and Usage Models RDSEFFs: Generated from CallingRelationships and OperationCallFrequencys Usage Scenario (open workload) based on SystemProvidedInterfaceDelegationConnectorFrequencies and observation period André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 14 / 19
29 Extraction of RDSEFFs (Pattern) SLAstic2PCM Transformation (cont d) Utilizing PCM for SLAstic SLAstic2PCM M2M Transformation For each Operation 1 Create StartAction 2 Create InternalAction for initialization 3 Create LoopAction for each Interface Signature called by Operation 1 Create StartAction + InternalAction for initialization 2 Create ExternalCallAction 3 Create InternalAction for termination + StopAction 4 Create InternalAction for termination 5 Create StopAction André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 15 / 19
30 Extraction of RDSEFFs (Example) SLAstic2PCM Transformation (cont d) Utilizing PCM for SLAstic SLAstic2PCM M2M Transformation searchbook / getoffers searchbook / getbook Absolute Haeufigkeit Relative Haeufigkeit Absolute Haeufigkeit Relative Haeufigkeit Anzahl Aufrufe Anzahl Aufrufe André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 16 / 19
31 Scalability of the Transformation Utilizing PCM for SLAstic SLAstic2PCM M2M Transformation Kieker file system log System Size of Monitoring Log # Operation Executions # Traces Bookstore 892 KB 6,540 1,635 JPetStore 63 MB 259,852 48,720 Customer Portal 164 MB 847, ,980 SPECjEnterprise 380 MB 189, ,018 SLAstic model metrics System # Components # Signatures # Containers # CallingRelationships # value pairs Bookstore JPetStore Customer Portal SPECjEnterprise Durations of SLAstic2PCM transformations System Mean duration (seconds) Std dev. Bookstore JPetStore Customer Portal SPECjEnterprise André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 17 / 19
32 Conclusion Conclusions Summary Outlined SLAstic approach: Online capacity management of CB systems Architectural models Runtime (PCM by decoration) Extraction of SLAstic ( SLAstic2PCM PCM) models via dynamic analysis Extraction step evaluated for larger systems already Supported languages (thanks to Kieker s language support): Java,.NET, Visual Basic 6 (in progress: COBOL,... ) Future Work Extend SLAstic2PCM to produce SLAstic/PCM decorator model Basic extraction of resource demands for PCM RDSEFFs Evaluate quality of extracted models Resolve some of SLAstic.SIM s limitations (e.g., PMF support in loops) André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 18 / 19
33 Literature Conclusions S. Becker, H. Koziolek, and R. Reussner. The Palladio component model for model-driven performance prediction. Journal of Systems and Software, 82(1): 3 22, ISSN doi: /j.jss Special Issue: Software Performance Modeling and Analysis. P. Clements, F. Bachmann, L. Bass, D. Garlan, J. Ivers, R. Little, R. Nord, and J. Stafford. Documenting Software Architectures: Views and Beyond. Addison-Wesley / Pearson Education, ISBN D. Garlan, S.-W. Cheng, and B. R. Schmerl. Increasing system dependability through architecture-based self-repair. In R. de Lemos, C. Gacek, and A. B. Romanovsky, editors, Architecting Dependable Systems, volume 2677 of Lecture Notes in Computer Science, pages Springer, ISBN doi: / _3. I. Gorton, Y. Liu, and N. Trivedi. An extensible and lightweight architecture for adaptive server applications. Softw. Pract. Exper., 38(8): , ISSN doi: V. Grassi, R. Mirandola, and A. Sabetta. A model-driven approach to performability analysis of dynamically reconfigurable component-based systems. In Proceedings of the 6th International Workshop on Software and Performance (WOSP 07), pages ACM, ISBN doi: / N. Günther. Modellbasierte Laufzeit-Performance-Vorhersage für komponentenbasierte Softwarearchitekturen ( Model-based online performance prediction for component-based software architectures, in german), Nov Diploma Thesis, University of Kiel. C. Hofmeister. Dynamic Reconfiguration of Distributed Applications. PhD thesis, University of Maryland, IBM. IBM Autonomic Computing IEEE. IEEE recommended practice for architectural description of software-intensive systems std , R. Jain. The Art of Computer Systems Performance Analysis. John Wiley & Sons, New York, J. Kephart and D. Chess. The vision of autonomic computing. Computer, 36(1):41 50, Jan S. Kounev, F. Brosig, N. Huber, and R. Reussner. Towards self-aware performance and resource management in modern service-oriented systems. In Proceedings of the 7th IEEE International Conference on Services Computing (SCC 2010). IEEE Computer Society, J. Kramer and J. Magee. The evolving philosophers problem: Dynamic change management. IEEE Transactions on Software Engineering, 16(11): , J. Matevska. Architekturbasierte erreichbarkeitsoptimierte Rekonfiguration komponentenbasierter Softwaresysteme zur Laufzeit. PhD thesis, Department of Computer Science, University of Oldenburg, Oldenburg, Germany, July N. Medvidovic and R. N. Taylor. A classification and comparison framework for software architecture description languages. IEEE Trans. Softw. Eng., 26(1): 70 93, ISSN doi: / André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 19 / 19
34 Literature (cont d) Conclusions D. A. Menascé and V. A. Almeida. Capacity Planning for Web Services: Metrics, Models, and Methods. New Jersey: Prentice Hall, ISBN D. A. Menascé, M. N. Bennani, and H. Ruan. On the use of online analytic performance models in self-managing and self-organizing computer systems. In Ö. Babaoglu, M. Jelasity, A. Montresor, C. Fetzer, S. Leonardi, A. P. A. van Moorsel, and M. van Steen, editors, Self-star Properties in Complex Information Systems, volume 3460 of Lecture Notes in Computer Science, pages Springer, ISBN doi: / _9. R. N. Taylor, N. Medvidovic, and E. M. Dashofy. Software Architecture: Foundations, Theory and Practice. John Wiley & Sons, Inc., ISBN A. van Hoorn. Online Capacity Management for Increased Resource Efficiency of Component-Based Software Systems. PhD thesis, Department of Computer Science, University of Oldenburg, Oldenburg, Germany, work in progress. A. van Hoorn, M. Rohr, A. Gul, and W. Hasselbring. An adaptation framework enabling resource-efficient operation of software systems. In N. Medvidovic and T. Tamai, editors, Proceedings of the 2nd Warm-Up Workshop for ACM/IEEE ICSE 2010 (WUP 09), pages ACM, Apr. 2009a. ISBN doi: / A. van Hoorn, M. Rohr, W. Hasselbring, J. Waller, J. Ehlers, S. Frey, and D. Kieselhorst. Continuous monitoring of software services: Design and application of the Kieker framework. Technical Report TR-0921, Department of Computer Science, University of Kiel, Germany, Nov. 2009b. URL R. von Massow, A. van Hoorn, and W. Hasselbring. Performance simulation of runtime reconfigurable component-based software architectures. In I. Crnkovic, V. Gruhn, and M. Book, editors, Proceedings of the 5th European Conference on Software Architecture (ECSA 11), volume 6903 of Lecture Notes in Computer Science, pages Springer, Sept doi: / _5. M. Woodside, G. Franks, and D. C. Petriu. The future of software performance engineering. In 2007 Future of Software Engineering (FOSE 07), pages IEEE, André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 20 / 19
35 Foundations Bonus Foundations and Related Work Software Performance Engineering Self-Adaptive Software Systems SLAstic Software Architecture André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 21 / 19
36 Software Architecture Foundations (cont d) Bonus Foundations and Related Work Software Performance Engineering SLAstic Software Architecture Software Architecture (IEEE Def. [IEEE 2000]) Self-Adaptive Software Systems The fundamental organization of a system embodied in its components, their relationships to each other and to the environment, and the principles guiding its design and evolution. Views & Viewpoints [Clements et al. 2002] Structural Behavioral ADLs [Medvidovic and Taylor 2000, Taylor et al. 2009] Architectural styles [Taylor et al. 2009] Component-based Service-oriented, etc. Runtime reconfiguration/ Change management [Kramer and Magee 1990, Hofmeister 1993, Matevska 2009] André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 22 / 19
37 Software Performance Engineering Foundations (cont d) Bonus Foundations and Related Work Software Performance Engineering SLAstic Self-Adaptive Software Systems Performance Concerned with Timing Resource usage Software Architecture Software Performance Engineering [Woodside et al. 2007] Represents the entire collection of software engineering activities and related analyses used throughout the software development cycle which are directed to meeting performance requirements. Metrics [Jain 1991] Response time, Throughput, Utilization, etc. Model- vs. Measurement-based Capacity Planning [Menascé and Almeida 2002] SLAs/SLOs Workload Characterization Workload Forecasting Performance Prediction André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 23 / 19
38 Self-Adaptive Software Systems Foundations (cont d) Bonus Foundations and Related Work Software Performance Engineering Self-Adaptive Software Systems SLAstic Software Architecture IBM s autonomic computing initiative [Kephart and Chess 2003, IBM 2010] Systems manage themselves according to an administrator s goals. André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 24 / 19
39 Related Work Bonus Foundations and Related Work Performance Modeling of Component-Based Software Systems S. Becker, H. Koziolek and R. Reussner. The Palladio component model for model-driven performance prediction. JSS, V. Grassi, R. Mirandola and A. Sabetta. A model-driven approach to performability analysis of dynamically reconfigurable component-based systems. WOSP 07, ACM, Architecture-Based Runtime Reconfiguration D. Garlan, S.-W. Cheng and B. Schmerl. Increasing system dependability through architecture-based self-repair. ADS, Springer, J. Matevska. Architekturbasierte erreichbarkeitsoptimierte Rekonfiguration komponentenbasierter Softwaresysteme zur Laufzeit, Dissertation, Dept. Comp. Sc., Univ. Oldenburg, 2009 Online Performance & Resource Management A. Diaconescu and J. Murphy. Automating the performance management of component-based enterprise systems through the use of redundancy. ASE 05, ACM, I. Gorton, Y. Liu and N. Trivedi. An extensible and lightweight architecture for adaptive server applications. Softw. Pract. Exper., D. A. Menascé, M. H. Bennani, and H. Ruan. On the use of online analytic performance models in self-managing and self-organizing Computer Systems. Self-Star 04, Springer, S. Kounev, F. Brosig, N. Huber, and R. Reussner. Towards self-aware performance and resource management in modern service-oriented systems. SCC 10, IEEE, André van Hoorn (CAU Kiel) PCM for Online Capacity Management of C-B Systems Nov. 18, Palladio Days 25 / 19
Continuous Monitoring of Software Services: Design and Application of the Kieker Framework
Continuous Monitoring of Software Services: Design and Application of the Kieker André van Hoorn 1,3, Matthias Rohr 1,2, Wilhelm Hasselbring 1,3, Jan Waller 3, Jens Ehlers 3, Sören Frey 3, and Dennis Kieselhorst
Tool-Supported Application Performance Problem Detection and Diagnosis. André van Hoorn. http://www.iste.uni-stuttgart.de/rss/
Tool-Supported Application Performance Problem Detection and Diagnosis University of Stuttgart Institute of Software Technology, Reliable Software Systems Group http://www.iste.uni-stuttgart.de/rss/ Agenda
Automatic Extraction of Probabilistic Workload Specifications for Load Testing Session-Based Application Systems
Bratislava, Slovakia, 2014-12-10 Automatic Extraction of Probabilistic Workload Specifications for Load Testing Session-Based Application Systems André van Hoorn, Christian Vögele Eike Schulz, Wilhelm
Towards a Performance Model Management Repository for Component-based Enterprise Applications
Austin, TX, USA, 2015-02-04 Towards a Performance Model Management Repository for Component-based Enterprise Applications Work-in-Progress Paper (WiP) International Conference on Performance Engineering
Using Dynatrace Monitoring Data for Generating Performance Models of Java EE Applications
Austin, TX, USA, 2015-02-02 Using Monitoring Data for Generating Performance Models of Java EE Applications Tool Paper International Conference on Performance Engineering (ICPE) 2015 Felix Willnecker 1,
GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs
GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs Doctoral Symposium - MODELS 2014 Reiner Jung Christian-Albrechts-University Kiel, Germany 30.09.2014 Domain-specific Languages Motivation
Microservices for Scalability
Microservices for Scalability Keynote at ICPE 2016, Delft, NL Prof. Dr. Wilhelm (Willi) Hasselbring Software Engineering Group, Kiel University, Germany http://se.informatik.uni-kiel.de/ Competence Cluster
GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs
GECO: Automatic Generator-Composition for (Aspect-oriented) DSLs Doctoral Symposium Reiner Jung Christian-Albrechts-Universität zu Kiel Institut für Informatik 26.02.2014 Domain-specific Languages Motivation
A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor
A Case Study on Model-Driven and Conventional Software Development: The Palladio Editor Klaus Krogmann, Steffen Becker University of Karlsruhe (TH) {krogmann, sbecker}@ipd.uka.de Abstract: The actual benefits
Model-Driven Online Capacity Management for Component-Based Software Systems
Model-Driven Online Capacity Management for Component-Based Software Systems Dissertation Dipl.-Inform. André van Hoorn Dissertation zur Erlangung des akademischen Grades Doktor der Ingenieurwissenschaften
Software Adaptation Patterns for Service-Oriented Architectures
Software Adaptation Patterns for -Oriented Architectures Hassan Gomaa, Koji Hashimoto, Minseong Kim, Sam Malek, Daniel A. Menascé Department of Computer Science George Mason University Fairfax, VA 22030
Performance Benchmarking of Application Monitoring Frameworks
Performance Benchmarking of Application Monitoring Frameworks Jan Waller 2014/5 Kiel Computer Science Series Performance Benchmarking of Application Monitoring Frameworks Dissertation Jan Waller Dissertation
Self Adaptive Software System Monitoring for Performance Anomaly Localization
2011/06/17 Jens Ehlers, André van Hoorn, Jan Waller, Wilhelm Hasselbring Software Engineering Group Christian Albrechts University Kiel Application level Monitoring Extensive infrastructure monitoring,
Open-Source-Software als Katalysator im Technologietransfer am Beispiel des Monitoring-Frameworks
Open-Source-Software als Katalysator im Technologietransfer am Beispiel des -Frameworks Wilhelm Hasselbring 1 & André van Hoorn 2 1 Kiel University (CAU) Software Engineering Group & 2 University of Stuttgart
A Hierarchical Self-X SLA for Cloud Computing
A Hierarchical Self-X SLA for Cloud Computing 1 Ahmad Mosallanejad, 2 Rodziah Atan, 3 Rusli Abdullah, 4 Masrah Azmi Murad *1,2,3,4 Faculty of Computer Science and Information Technology, UPM, Malaysia,
Layered Queuing networks for simulating Enterprise Resource Planning systems
Layered Queuing networks for simulating Enterprise Resource Planning systems Stephan Gradl, André Bögelsack, Holger Wittges, Helmut Krcmar Technische Universitaet Muenchen {gradl, boegelsa, wittges, krcmar}@in.tum.de
ExplorViz: Visual Runtime Behavior Analysis of Enterprise Application Landscapes
ExplorViz: Visual Runtime Behavior Analysis of Enterprise Application Landscapes Florian Fittkau, Sascha Roth, and Wilhelm Hasselbring 2015-05-27 Fittkau, Roth, Hasselbring ExplorViz: Visual Runtime Behavior
Workload-aware System Monitoring Using Performance Predictions Applied to a Large-scale E-Mail System
Workload-aware System Monitoring Using Performance Predictions Applied to a Large-scale E-Mail System Christoph Rathfelder FZI Research Center for Information Technology Karlsruhe, Germany [email protected]
A Business Driven Cloud Optimization Architecture
A Business Driven Cloud Optimization Architecture Marin Litoiu York University, Canada [email protected] Murray Woodside Carleton University, Canada Johnny Wong University of Waterloo, Canada Joanna Ng,
Self-Adaptive Performance Monitoring for Component-Based Software Systems. Jens Ehlers
Self-Adaptive Performance Monitoring for Component-Based Software Systems Jens Ehlers Dissertation zur Erlangung des akademischen Grades Doktor der Ingenieurwissenschaften (Dr.-Ing.) der Technischen Fakultät
An Approach to Software Architecture Description Using UML
An Approach to Software Architecture Description Using UML Henrik Bærbak Christensen, Aino Corry, and Klaus Marius Hansen Department of Computer Science, University of Aarhus Aabogade 34, 8200 Århus N,
SPEC Research Group. Sam Kounev. SPEC 2015 Annual Meeting. Austin, TX, February 5, 2015
SPEC Research Group Sam Kounev SPEC 2015 Annual Meeting Austin, TX, February 5, 2015 Standard Performance Evaluation Corporation OSG HPG GWPG RG Open Systems Group High Performance Group Graphics and Workstation
Capturing provenance information with a workflow monitoring extension for the Kieker framework
Capturing provenance information with a workflow monitoring extension for the Kieker framework Peer C. Brauer Wilhelm Hasselbring Software Engineering Group, University of Kiel, Christian-Albrechts-Platz
Continual Verification of Non-Functional Properties in Cloud-Based Systems
Continual Verification of Non-Functional Properties in Cloud-Based Systems Invited Paper Radu Calinescu, Kenneth Johnson, Yasmin Rafiq, Simos Gerasimou, Gabriel Costa Silva and Stanimir N. Pehlivanov Department
DESIGN PATTERNS FOR SELF ADAPTIVE SYSTEMS ENGINEERING
DESIGN PATTERNS FOR SELF ADAPTIVE SYSTEMS ENGINEERING ABSTRACT Yousef Abuseta and Khaled Swesi Computer Science Department, Faculty of Science Al-Jabal Al-Gharbi University, Libya Self adaptation has been
Performance Modeling in Industry A Case Study on Storage Virtualization
Performance Modeling in Industry A Case Study on Storage Virtualization SOFTWARE DESIGN AND QUALITY GROUP - DESCARTES RESEARCH GROUP INSTITUTE FOR PROGRAM STRUCTURES AND DATA ORGANIZATION, FACULTY OF INFORMATICS
Online Performance Anomaly Detection with
ΘPAD: Online Performance Anomaly Detection with Tillmann Bielefeld 1 1 empuxa GmbH, Kiel KoSSE-Symposium Application Performance Management (Kieker Days 2012) November 29, 2012 @ Wissenschaftszentrum Kiel
Capacity Planning for Event-based Systems using Automated Performance Predictions
Capacity Planning for Event-based Systems using Automated Performance Predictions Christoph Rathfelder FZI Research Center for Information Technology Karlsruhe, Germany [email protected] Samuel Kounev
Automated Extraction of Palladio Component Models from Running Enterprise Java Applications
Automated Extraction of Palladio Component Models from Running Enterprise Java Applications Fabian Brosig, Samuel Kounev, Klaus Krogmann Software Design and Quality Group Universität Karlsruhe (TH), Germany
Resource-Aware Applications for the Cloud
Resource-Aware Applications for the Cloud Reiner Hähnle 1 and Einar Broch Johnsen 2 1 Technical University of Darmstadt, Germany [email protected] 2 University of Oslo, Norway [email protected]
The IBM Rational Software Development Platform..Role focused tools help simplification via Separation of Concerns
The IBM Rational Software Development Platform..Role focused tools help simplification via Separation of Concerns Analyst Architect Developer Tester Model the business & identify the business services
Layered Dependability Modeling of an Air Traffic Control System
Layered Dependability Modeling of an Air Traffic Control System Olivia Das, C. Murray Woodside Dept. of Systems and Computer Engineering, Carleton University, Ottawa, Canada email: [email protected],
A STUDY OF WORKLOAD CHARACTERIZATION IN WEB BENCHMARKING TOOLS FOR WEB SERVER CLUSTERS
382 A STUDY OF WORKLOAD CHARACTERIZATION IN WEB BENCHMARKING TOOLS FOR WEB SERVER CLUSTERS Syed Mutahar Aaqib 1, Lalitsen Sharma 2 1 Research Scholar, 2 Associate Professor University of Jammu, India Abstract:
Statistical Inference of Software Performance Models for Parametric Performance Completions
Statistical Inference of Software Performance Models for Parametric Performance Completions Jens Happe 1, Dennis Westermann 1, Kai Sachs 2, Lucia Kapová 3 1 SAP Research, CEC Karlsruhe, Germany {jens.happe
SLA Business Management Based on Key Performance Indicators
, July 4-6, 2012, London, U.K. SLA Business Management Based on Key Performance Indicators S. Al Aloussi Abstract-It is increasingly important that Service Level Agreements (SLAs) are taken into account
On-demand Services Composition and Infrastructure Management
On-demand s Composition and Infrastructure Management Jun Peng and Jie Wang Department of Civil and Environmental Engineering, Stanford University, Stanford, CA 94305, USA {junpeng, jiewang}@stanford.edu
An overview to Software Architecture in Intrusion Detection System
An overview to Software Architecture in Intrusion Detection System * Mehdi Bahrami 1, Mohammad Bahrami 2 Department of Computer Engineering, I.A.U., Booshehr Branch, Iran Bahrami 1 ;Shayan 2 @LianPro.com
Business Process Management Enabled by SOA
Business Process Management Enabled by SOA Jyväskylä 8.5.2007 Kimmo Kaskikallio IT Architect IBM Software Brands Five middleware product lines designed to work together Service-Oriented Architecture (SOA)
Performance Monitoring of Database Operations
Performance Monitoring of Database Operations Christian Zirkelbach July 29, 2015 Christian Zirkelbach Performance Monitoring of DB Operations July 29, 2015 1 / 39 Outline 1. Introduction 2. Approach 3.
EARLY PERFORMANCE PREDICTION OF WEB
EARLY PERFORMANCE PREDICTION OF WEB SERVICES Ch Ram Mohan Reddy 1, D Evangelin Geetha 2, KG Srinivasa 2, T V Suresh Kumar 2, K Rajani Kanth 2 1 B M S College of Engineering, Bangalore - 19, India 2 M S
Cloud Computing Architectures and Design Issues
Cloud Computing Architectures and Design Issues Ozalp Babaoglu, Stefano Ferretti, Moreno Marzolla, Fabio Panzieri {babaoglu, sferrett, marzolla, panzieri}@cs.unibo.it Outline What is Cloud Computing? A
Comparison of Request Admission Based Performance Isolation Approaches in Multi-tenant SaaS Applications
Comparison of Request Admission Based Performance Isolation Approaches in Multi-tenant SaaS Applications Rouven Kreb 1 and Manuel Loesch 2 1 SAP AG, Walldorf, Germany 2 FZI Research Center for Information
Software Configuration Management Related to Management of Distributed Systems and Services and Advanced Service Creation
Software Configuration Management Related to Management of Distributed Systems and Services and Advanced Service Creation Vladimir Tosic 1, David Mennie 2, Bernard Pagurek 1 1 Network Management and Artificial
Automated support for service-based software development and integration
The Journal of Systems and Software xxx (2004) xxx xxx www.elsevier.com/locate/jss Automated support for service-based software development and integration Gerald C. Gannod a, *, Sudhakiran V. Mudiam a,
Decentralized Planning for Self-adaptation in Multi-cloud Environment
Decentralized Planning for Self-adaptation in Multi-cloud Environment Azlan Ismail 1 and Valeria Cardellini 2 1 Faculty of Computer and Mathematical Sciences Universiti Teknologi MARA (UiTM), Malaysia
A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems
A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems Vincenzo Grassi Università di Roma Tor Vergata, Italy Raffaela Mirandola {vgrassi, mirandola}@info.uniroma2.it Abstract.
How To Model A System
Web Applications Engineering: Performance Analysis: Operational Laws Service Oriented Computing Group, CSE, UNSW Week 11 Material in these Lecture Notes is derived from: Performance by Design: Computer
Figure 1: Illustration of service management conceptual framework
Dagstuhl Seminar on Service-Oriented Computing Session Summary Service Management Asit Dan, IBM Participants of the Core Group Luciano Baresi, Politecnico di Milano Asit Dan, IBM (Session Lead) Martin
Capacity Plan. Template. Version X.x October 11, 2012
Template Version X.x October 11, 2012 This is an integral part of infrastructure and deployment planning. It supports the goal of optimum provisioning of resources and services by aligning them to business
KLAPER: an Intermediate Language for Model-Driven Predictive Analysis of Performance and Reliability
KLAPER: an Intermediate Language for Model-Driven Predictive Analysis of Performance and Reliability Vincenzo Grassi Dipartimento di Informatica, Sistemi e Produzione, Università di Roma Tor Vergata Raffaela
Towards Management of SLA-Aware Business Processes Based on Key Performance Indicators
Towards Management of SLA-Aware Business Processes Based on Key Performance Indicators Branimir Wetzstein, Dimka Karastoyanova, Frank Leymann Institute of Architecture of Application Systems, University
Curriculum Vitae. Zhenchang Xing
Curriculum Vitae Zhenchang Xing Computing Science Department University of Alberta, Edmonton, Alberta T6G 2E8 Phone: (780) 433 0808 E-mail: [email protected] http://www.cs.ualberta.ca/~xing EDUCATION
