Efficient and deterministic application deployment in component-based enterprise distributed real-time and embedded systems

Context: Component-based middleware, such as the Lightweight CORBA Component Model, is increasingly used to implement enterprise distributed real-time and embedded (DRE) systems. In addition to supporting the quality-of-service (QoS) requirements of individual DRE systems, component technologies must also support bounded latencies when effecting deployment changes to DRE systems in response to changing environmental conditions and operational requirements. Objective: The goals of this paper are to (1) study sources of inefficiencies and non-deterministic performance in deployment capabilities for DRE systems and (2) devise solutions to overcome these performance problems. Method: The paper makes two contributions to the study of the deployment and configuration of distributed component based applications. First, we analyze how conventional implementations of the OMG's Deployment and Configuration (D&C) specification for component-based systems can significantly degrade deployment latencies. Second, we describe architectural changes and performance optimizations implemented within the Locality-Enhanced Deployment and Configuration Engine (LE-DAnCE) implementation of the D&C specification to obtain efficient and deterministic deployment latencies. Results: We analyze the performance of LE-DAnCE in the context of component deployments on 10 nodes for a representative DRE system consisting of 1000 components and in a cluster environment with up to 100 nodes. Our results show LE-DAnCE's optimizations provide a bounded deployment latency of less than 2s for the 1000 component scenario with just a 4 percent jitter. Conclusion: The improvements contained in the LE-DAnCE infrastructure provide an efficient and scaleable standards-based deployment system for component-based enterprise DRE systems. In particular, deployment time parallelism can improve deployment latency significantly, both during pre-deployment analysis of the deployment plan and during the process of installing and activating components.

[1]  Douglas C. Schmidt,et al.  Pattern-Oriented Software Architecture, Patterns for Concurrent and Networked Objects , 2013 .

[2]  Douglas C. Schmidt,et al.  Integrated Adaptive QoS Management in Middleware: A Case Study , 2004, Proceedings. RTAS 2004. 10th IEEE Real-Time and Embedded Technology and Applications Symposium, 2004..

[3]  Massachusett Framingham,et al.  The Common Object Request Broker: Architecture and Specification Version 3 , 2003 .

[4]  Luc Bellissard,et al.  Asynchronous, Hierarchical, and Scalable Deployment of Component-Based Applications , 2004, Component Deployment.

[5]  Douglas C. Schmidt,et al.  Towards an Adaptive Deployment and Configuration Framework for Component-based Distributed Systems , 2010 .

[6]  Aniruddha S. Gokhale,et al.  Predictable deployment in component-based enterprise distributed real-time and embedded systems , 2011, CBSE '11.

[7]  Douglas C. Schmidt,et al.  The design and performance of a scable ORB architecture for COBRA asynchronous messaging , 2000 .

[8]  Aniruddha S. Gokhale,et al.  A multi-layered resource management framework for dynamic resource management in enterprise DRE systems , 2007, J. Syst. Softw..

[9]  Yves Mahéo,et al.  Middleware support for the deployment of ubiquitous software components , 2008, Personal and Ubiquitous Computing.

[10]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[11]  Douglas C. Schmidt,et al.  Application of Middleware and Agent Technologies to a Representative Sensor Network , 2008 .

[12]  Douglas C. Schmidt,et al.  CoSMIC: An MDA Generative Tool for Distributed Real-time and Embedded Component Middleware and Applications , 2002 .

[13]  Daniel Hagimont,et al.  Large Scale Deployment , 2010, 2010 Sixth International Conference on Autonomic and Autonomous Systems.

[14]  Aniruddha S. Gokhale,et al.  Middleware Support for Dynamic Component Updating , 2005, OTM Conferences.

[15]  Aniruddha S. Gokhale,et al.  CaDAnCE: A Criticality-Aware Deployment and Configuration Engine , 2008, 2008 11th IEEE International Symposium on Object and Component-Oriented Real-Time Distributed Computing (ISORC).

[16]  Thierry Coupaye,et al.  An Open Component Model and Its Support in Java , 2004, CBSE.

[17]  Mike Hibler,et al.  An integrated experimental environment for distributed systems and networks , 2002, OPSR.

[18]  Aniruddha S. Gokhale,et al.  DAnCE: A QoS-Enabled Component Deployment and Configuration Engine , 2005, Component Deployment.

[19]  Douglas C. Schmidt,et al.  The Design and Performance of a Scalable ORB Architecture for CORBA Asynchronous Messaging , 2000, Middleware.

[20]  Christopher D. Gill,et al.  The design and performance of configurable component middleware for distributed real-time and embedded systems , 2004, 25th IEEE International Real-Time Systems Symposium.

[21]  Aniruddha S. Gokhale,et al.  The design and performance of component middleware for QoS-enabled deployment and configuration of DRE systems , 2007, J. Syst. Softw..

[22]  Douglas C. Schmidt,et al.  A framework for (re)deploying components in distributed real-time and embedded systems , 2006, SAC '06.

[23]  Domenico Cotroneo,et al.  Resilient and Timely Event Dissemination in Publish/Subscribe Middleware , 2010, Int. J. Adapt. Resilient Auton. Syst..

[24]  André Ribes,et al.  A Parallel Corba Component Model for Numerical Code Coupling , 2002, Int. J. High Perform. Comput. Appl..

[25]  Mohamed Jmaiel,et al.  A QoS-Oriented Reconfigurable Middleware for Self-Healing Web Services , 2008, 2008 IEEE International Conference on Web Services.

[26]  Philippe Merle,et al.  Deploying on the Grid with DeployWare , 2008, 2008 Eighth IEEE International Symposium on Cluster Computing and the Grid (CCGRID).

[27]  Douglas C. Schmidt,et al.  Reducing application code complexity with vocabulary-specific XML language bindings , 2005, ACM-SE 43.