An Architecture for Self-healing Autonomous Object Groups

  • Hein Meling
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4610)


Jgroup/ARM is a middleware for developing and operating dependable distributed Java applications. Jgroup integrates the distributed object model of Java RMI with the object group paradigm, enabling construction of replicated servers that offer dependable services to clients. ARM aims to improve the dependability characteristics of systems through fault treatment, focusing on operational aspects where the gain in terms of improved dependability is likely to be the greatest. ARM offers two core mechanisms: recovery from node, object and network failures and distribution of replicas. ARM identifies failures and reconfigures the system according to its dependability requirements.

This paper proposes an enhancement of the ARM framework in which replica placement is performed in a distributed manner, eliminating the need for a centralized manager with global information about all object groups. Instead each autonomous object group handles their own replica placement based on information from nodes. Assuming that multiple objects groups are deployed in the system, this constitutes a distributed replica placement scheme. This scheme enables the implementation of self-healing object groups that can perform fault treatment on themselves. Advantages of the approach: (a) no need to maintain global information about all object groups which is costly and limits scalability, (b) reduced infrastructure complexity, and (c) less communication overhead.


Recovery Action Fault Treatment Object Factory Target Environment Object Group 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Amir, Y., Danilov, C., Stanton, J.: A Low Latency, Loss Tolerant Architecture and Protocol for Wide Area Group Communication. In: Proc. Int. Conf. on Dependable Systems and Networks, New York (2000)Google Scholar
  2. 2.
    Montresor, A.: System Support for Programming Object-Oriented Dependable Applications in Partitionable Systems. PhD thesis, Dept. of Computer Science, University of Bologna (2000)Google Scholar
  3. 3.
    Felber, P., Guerraoui, R., Schiper, A.: The Implementation of a CORBA Object Group Service. Theory and Practice of Object Systems 4, 93–105 (1998)CrossRefGoogle Scholar
  4. 4.
    Ban, B.: JavaGroups – Group Communication Patterns in Java. Technical report, Dept. of Computer Science, Cornell University (1998)Google Scholar
  5. 5.
    Narasimhan, P., et al.: Eternal - a Component-Based Framework for Transparent Fault-Tolerant CORBA. Softw. Pract. Exper. 32, 771–788 (2002)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Meling, H.: Adaptive Middleware Support and Autonomous Fault Treatment: Architectural Design, Prototyping and Experimental Evaluation. PhD thesis, Norwegian University of Science and Technology, Dept. of Telematics (2006)Google Scholar
  7. 7.
    Meling, H., Montresor, A., Helvik, B.E., Babaoğlu, Ö.: Jgroup/ARM: A Distributed Object Group Platform with Autonomous Replication Management. Technical Report No. 11, University of Stavanger (2006)Google Scholar
  8. 8.
    Chockler, G.V., Keidar, I., Vitenberg, R.: Group Communication Specifications: A Comprehensive Study. ACM Computing Surveys 33, 1–43 (2001)CrossRefGoogle Scholar
  9. 9.
    Sloman, M.: Policy driven management for distributed systems. Journal of Network and Systems Management 2 (1994)Google Scholar
  10. 10.
    Murch, R.: Autonomic Computing. On Demand Series. IBM Press (2004)Google Scholar
  11. 11.
    Solarski, M., Meling, H.: Towards Upgrading Actively Replicated Servers on-the-fly. In: Proc. Workshop on Dependable On-line Upgrading of Distributed Systems in conjunction with COMPSAC 2002, Oxford, England (2002)Google Scholar
  12. 12.
    Powell, D.: Distributed Fault Tolerance: Lessons from Delta-4. IEEE Micro 36–47 (1994)Google Scholar
  13. 13.
    Ren, Y., et al.: AQuA: An Adaptive Architecture that Provides Dependable Distributed Objects. IEEE Trans. Comput. 52, 31–50 (2003)CrossRefGoogle Scholar
  14. 14.
    Object Management Group: Fault Tolerant CORBA Specification. OMG Document ptc/00-04-04 (2000)Google Scholar
  15. 15.
    Meling, H.: An Architecture for Self-healing Autonomous Object Groups. Technical Report No. 21, University of Stavanger (2007)Google Scholar
  16. 16.
    Helvik, B.E., Meling, H., Montresor, A.: An Approach to Experimentally Obtain Service Dependability Characteristics of the Jgroup/ARM System. In: Proc. Fifth European Dependable Computing Conference (2005)Google Scholar
  17. 17.
    Agrawal, D., Lee, K.W., Lobo, J.: Policy-Based Management of Networked Computing Systems. IEEE Commun. Mag. 43, 69–75 (2005)CrossRefGoogle Scholar
  18. 18.
    Natarajan, B., et al.: DOORS: Towards High-performance Fault Tolerant CORBA. In: Proc. 2nd Int. Symp. Distributed Objects and Applications (2000)Google Scholar
  19. 19.
    Reverte, C.F., Narasimhan, P.: Decentralized Resource Management and Fault-Tolerance for Distributed CORBA Applications. In: Proc. 9th Int. Workshop on Object-Oriented Real-Time Dependable Systems (2003)Google Scholar
  20. 20.
    Meling, H., Helvik, B.E.: ARM: Autonomous Replication Management in Jgroup. In: Proc. 4th European Research Seminar on Advances in Distributed Systems, Bertinoro, Italy (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Hein Meling
    • 1
  1. 1.Department of Electrical Engineering and Computer Science, University of Stavanger, N-4036 StavangerNorway

Personalised recommendations