2,607 research outputs found

    A Peer-to-Peer Middleware Framework for Resilient Persistent Programming

    Get PDF
    The persistent programming systems of the 1980s offered a programming model that integrated computation and long-term storage. In these systems, reliable applications could be engineered without requiring the programmer to write translation code to manage the transfer of data to and from non-volatile storage. More importantly, it simplified the programmer's conceptual model of an application, and avoided the many coherency problems that result from multiple cached copies of the same information. Although technically innovative, persistent languages were not widely adopted, perhaps due in part to their closed-world model. Each persistent store was located on a single host, and there were no flexible mechanisms for communication or transfer of data between separate stores. Here we re-open the work on persistence and combine it with modern peer-to-peer techniques in order to provide support for orthogonal persistence in resilient and potentially long-running distributed applications. Our vision is of an infrastructure within which an application can be developed and distributed with minimal modification, whereupon the application becomes resilient to certain failure modes. If a node, or the connection to it, fails during execution of the application, the objects are re-instantiated from distributed replicas, without their reference holders being aware of the failure. Furthermore, we believe that this can be achieved within a spectrum of application programmer intervention, ranging from minimal to totally prescriptive, as desired. The same mechanisms encompass an orthogonally persistent programming model. We outline our approach to implementing this vision, and describe current progress.Comment: Submitted to EuroSys 200

    The Architecture of a Worldwide Distributed System

    Get PDF

    A Scalable Middleware Solution for Advanced Wide Area Web Services

    Get PDF
    To alleviate scalability problems in the Web, many researchers concentrate on how to incorporate advanced caching and replication techniques. Many solutions incorporate object-based techniques. In particular, Web resources are considered as distributed objects offering a well-defined interface. We argue that most proposals ignore two important aspects. First, there is little discussion on what kind of coherence should be provided. Proposing specific caching or replication solutions makes sense only if we know what coherence model they should implement. Second, most proposals treat all Web resources alike. Such a one-size-fits-all approach will never work in a wide-area system. We propose a solution in which Web resources are encapsulated in physically distributed shared objects. Each object should encapsulate not only state and operations, but also the policy by which its state is distributed, cached, replicated, migrated, etc

    Web Replica Hosting Systems

    Get PDF

    Unifying Internet Services Using Distributed Shared Objects

    Get PDF
    Developing wide area applications such as those for sharing data across the Internet is unnecessarily difficult. The main problem is the widespread use of a communication paradigm that is too low level. We will show how wide area application development can be made easier when using distributed shared objects instead of a communication-oriented model. An object in our model is physically distributed, with multiple copies of its state on different machines. All implementation aspects such as replication, distribution, and migration of state, are hidden from users through an object's interface. In this paper, we concentrate on the application of distributed shared objects, by providing an outline of a middleware solution that permits integration of the Internet services for e-mail, News, file transfer, and Web documents. vrije Universiteit Faculty of Mathematics and Computer Science 1 Introduction Constructing wide area applications, such as those for sharing data across the Internet,..
    corecore