Emergence: A Paradigm for Robust and Scalable Distributed Applications

  • Authors:
  • Affiliations:
  • Venue:
  • ICAC '04 Proceedings of the First International Conference on Autonomic Computing
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Natural distributed systems are adaptive, scalable and fault-tolerant. Emergence science describes how higher-level self-regulatory behaviour arises in natural systems from many participants following simple rule-sets. Emergence advocates simple communication models, autonomy and independence, enhancing robustness and self-stabilization. High-quality distributed applications such as autonomic systems must satisfy the appropriate non-functional requirements which include scalability, efficiency, robustness, low-latency and stability. However the traditional design of distributed applications, especially in terms of the communication strategies employed, can introduce compromises between these characteristics. This paper discusses ways in which emergence science can be applied to distributed computing, avoiding some of the compromises associated with traditionally-designed applications. To demonstrate the effectiveness of this paradigm, an emergent election algorithm is described and its performance evaluated. The design incorporates non-deterministic behaviour. The resulting algorithm has very low communication complexity, and is simultaneously very stable, scalable and robust.