Another look at the middleware for dependable distributed computing

Open Access
SI: FOME - The Future of Middleware

Abstract

Key concepts of reliable distributed computing developed during the 1980s and 1990s (e.g., transactions, replication) influenced the standards based middleware such as CORBA and Java EE. This middleware has evolved steadily over the years with message passing facilities to support construction of loosely coupled systems. However, the way networked computing is being used for business and social uses is undergoing rapid changes as new ways of constructing distributed execution environments from varieties of resources, ranging from computational, storage, network to application level services, provided by globally distributed service providers are emerging. In light of these developments, the paper examines what core concepts, components, and techniques that will be required in the next-generation middleware for dependable distributed computing. The paper puts forward the case for five topics for further research: better coordination facilities for loosely coupled systems, restructuring of the middleware stack for supporting multi-tenancy, replication in the large, negotiation, and enforcement of service agreements, and accountability.

Keywords

Middleware Dependability Cloud computing Large-scale systems 

References

  1. 1.
    Aguilera M, Walfish M (2009) No time for asynchrony. In: Proc USENIX hot topics in operating systems (HotOS09), Berkeley, USAGoogle Scholar
  2. 2.
    Avizienis A, Laprie J-C, Randell B, Landwehr C (2004) Basic concepts and taxonomy of dependable and secure computing. IEEE Trans Dependable Secure Comput 1(1):11–33CrossRefGoogle Scholar
  3. 3.
    Baker S, Dobson S (2005) Comparing service-oriented and distributed object architectures. In: Meersman R, Tari Z et al. (eds) Proceedings of the international symposium on distributed objects and applications. Lecture notes in computer science, vol 3761. Springer, BerlinGoogle Scholar
  4. 4.
    Baker J et al. (2011) Megastore: providing scalable, highly available storage for interactive services. In: Conference on innovative data systems research (CIDR 11). Asilomar, California, USAGoogle Scholar
  5. 5.
    Schiper A et al. (eds) (2002) International workshop on future directions in distributed computing, Bertinoro. Lecture notes in computer science, vol 2584. Springer, BerlinGoogle Scholar
  6. 6.
    Calder B et al. (2011) Windows Azure Storage: A highly available cloud storage service with strong consistency. In: 23rd ACM symposium on operating systems principles (SOSP). Cascais, PortugalGoogle Scholar
  7. 7.
    Chow R et al. (2009) Controlling data in the cloud: outsourcing computation without outsourcing control. In: ACM cloud computing security workshop, CCSW09, Chicago, Illinois, USAGoogle Scholar
  8. 8.
    Cook N, Robinson P, Shrivastava S (2004) Component middleware to support non-repudiable service interactions. In: IEEE/IFIP international conference on dependable systems and networks (DSN 2004), Florence, pp 605–614Google Scholar
  9. 9.
    DeCandia G et al. (2007) Dynamo: Amazon’s highly available key-value store. In: 21st ACM symposium on operating systems principles (SOSP), New York, NY, USA, pp 205–220Google Scholar
  10. 10.
    Ezhilchelvan P, Shrivastava S (2010) Learning from the past for resolving dilemmas of asynchrony. In: 3rd ACM SIGOPS international workshop on large scale distributed systems and middleware, SIGOPS. Oper Syst Rev 44(2)Google Scholar
  11. 11.
    Ezhilchelvan P, Clarke D, Di Ferdinando A (2011) Near certain multicast delivery guarantees amidst perturbations in computer clusters. Technical Report No CS-TR-1267. School of Computing Science, Newcastle UniversityGoogle Scholar
  12. 12.
    Gilbert S, Lynch N (2002) Brewer’s conjecture and the feasibility of consistent, available, partition-tolerant Web services. ACM SIGACT News 33(2)Google Scholar
  13. 13.
  14. 14.
    Haeberlen A (2010) A case for the accountable cloud. In: 3rd ACM SIGOPS international workshop on large scale distributed systems and middleware. SIGOPS Oper Syst Rev 44(2)Google Scholar
  15. 15.
  16. 16.
  17. 17.
  18. 18.
  19. 19.
    Issarny V et al. (2011) Service-oriented middleware for the Future Internet: state of the art and research directions. J Internet Serv Appl 2(1):23–45CrossRefGoogle Scholar
  20. 20.
    Java Message Service Specification www.oracle.com/technetwork/java/index-jsp-142945.html
  21. 21.
    Java Specification Request JSR 342: Java Platform, Enterprise Edition 7 (Java EE 7) specification. http://jcp.org/en/jsr/detail?id=342
  22. 22.
    Jordan M et al. (2004) Scaling J2EE application servers with the multi-tasking virtual machine. Sun Microsystem Technical Report, SMLI TR-2004-135. Available at: https://labs.oracle.com/techrep/2004/smli_tr-2004-135.pdf
  23. 23.
    Kistijantoro A, Morgan G, Shrivastava S, Little M (2008) Enhancing an application server to support available components. IEEE Trans Softw Eng 34(4):531–545CrossRefGoogle Scholar
  24. 24.
    Krakowiak S, Shrivastava S (eds) (2000) Advances in distributed systems. Lecture notes in computer science, vol 1752. Springer, BerlinGoogle Scholar
  25. 25.
    Kshemkalyani AD, Singhal M (2011) Distributed computing: principles, algorithms, and systems. Cambridge University Press, Cambridge. ISBN: 9780521189842Google Scholar
  26. 26.
    Lakshman A, Malik P (2010) Cassandra a decentralized structured storage system. In: 3rd ACM SIGOPS international workshop on large scale distributed systems and middleware. SIGOPS Oper Syst Rev 44(2)Google Scholar
  27. 27.
    Lamport L (1998) The part-time parliament. ACM Trans Comput Syst 16(2):133–169CrossRefGoogle Scholar
  28. 28.
    Levandoski J, Lomet D, Mokbel M, Zhao KK (2011) Deuteronomy: transaction support for cloud data. In: Conference on innovative data systems research (CIDR 11), Asilomar, California, USAGoogle Scholar
  29. 29.
    Little M, Shrivastava S (2011) The evolution of the Arjuna transaction processing system, dependable and historic computing. In: Jones CB, Lloyd JL (eds) Lecture notes in computer science, vol 6875. Springer, Berlin, pp 323–343Google Scholar
  30. 30.
    Mell P, Grance T (2011) The NIST definition of cloud computing. NIST Spec Publ 800-145Google Scholar
  31. 31.
    Melliar-Smith PM, Moser L, Agarwala V (1990) Broadcast protocols for distributed systems. IEEE Trans Parallel Distrib Syst 1(1):17–25CrossRefGoogle Scholar
  32. 32.
    Molina-Jimenez C, Shrivastava S (2006) Maintaining consistency between loosely coupled services in the presence of timing constraints and validation errors. In: 4th IEEE European conference on web services (ECOWS), Zurich, pp 148–157Google Scholar
  33. 33.
    Molina-Jimenez C, Shrivastava S, Cook N (2007) Implementing business conversations with consistency guarantees using message-oriented middleware. In: 11th IEEE international EDOC conference (EDOC 2007), Annapolis, Maryland, USA, pp 51–62Google Scholar
  34. 34.
    Molina-Jimenez C, Shrivastava S, Strano M (2009) A model for checking contractual compliance of business interactions. IEEE Trans Serv Comput. doi:10.1109/TSC.2011.37Google Scholar
  35. 35.
    Molina-Jimenez C, Shrivastava S, Wheater S (2011) An architecture for negotiation and enforcement of resource usage policies. In: The IEEE international conference on service oriented computing applications (SOCA 2011), Irvine, CA, USAGoogle Scholar
  36. 36.
    Mowbray M (2009) The fog over the Grimpen Mire: Cloud computing and the law. SCRIPTed J Law Technol Soc 6(1)Google Scholar
  37. 37.
    Parrington G, Shrivastava S, Wheater S, Little M (1995) The design and implementation of Arjuna. Comput Syst 8(3):255–308Google Scholar
  38. 38.
    Tai S, Rouvellou I (2009) Strategies for integrating messaging and distributed object transactions. In: Sventek J, Coulson G (eds) Middleware 2000. Lecture notes in computer science, vol 1795. Springer, Berlin, pp 308–330CrossRefGoogle Scholar
  39. 39.
    Tanenbaum AS, van Steen M (2007) Distributed systems: principles and paradigms. Pearson, Upper Saddle River. ISBN: 0132392275Google Scholar
  40. 40.
    Wang C, Chen S, Zic J (2009) A contract-based accountability service model. In: Proc of IEEE international conference on Web services (ICWS 2009), Los Angeles, CA, USAGoogle Scholar
  41. 41.
  42. 42.
  43. 43.
  44. 44.
  45. 45.

Copyright information

© The Brazilian Computer Society 2011

Authors and Affiliations

  • Mark Little
    • 1
  • Santosh Shrivastava
    • 2
  • Stuart Wheater
    • 3
  1. 1.Red Hat Ltd.Nanotechnology CentreNewcastle upon TyneUK
  2. 2.School of Computing ScienceNewcastle UniversityNewcastle upon TyneUK
  3. 3.Arjuna Technologies Ltd.Nanotechnology CentreNewcastle upon TyneUK

Personalised recommendations