fbpx
Wikipedia

Distributed object

In distributed computing, distributed objects[citation needed] are objects (in the sense of object-oriented programming) that are distributed across different address spaces, either in different processes on the same computer, or even in multiple computers connected via a network, but which work together by sharing data and invoking methods. This often involves location transparency, where remote objects appear the same as local objects. The main method of distributed object communication is with remote method invocation, generally by message-passing: one object sends a message to another object in a remote machine or process to perform some task. The results are sent back to the calling object.

Image describes communication between distributed objects residing in different machines.

Distributed objects were popular in the late 1990s and early 2000s, but have since fallen out of favor.[1]

The term may also generally refer to one of the extensions of the basic object concept used in the context of distributed computing, such as replicated objects or live distributed objects.

  • Replicated objects are groups of software components (replicas) that run a distributed multi-party protocol to achieve a high degree of consistency between their internal states, and that respond to requests in a coordinated manner. Referring to the group of replicas jointly as an object reflects the fact that interacting with any of them exposes the same externally visible state and behavior.
  • Live distributed objects (or simply live objects)[2] generalize the replicated object concept to groups of replicas that might internally use any distributed protocol, perhaps resulting in only a weak consistency between their local states. Live distributed objects can also be defined as running instances of distributed multi-party protocols, viewed from the object-oriented perspective as entities that have a distinct identity, and that can encapsulate distributed state and behavior.

See also Internet protocol suite.

Local vs. distributed objects Edit

Local and distributed objects differ in many respects.[3][4] Here are some of them:

  1. Life cycle : Creation, migration and deletion of distributed objects is different from local objects
  2. Reference : Remote references to distributed objects are more complex than simple pointers to memory addresses
  3. Request Latency : A distributed object request is orders of magnitude slower than local method invocation
  4. Object Activation : Distributed objects may not always be available to serve an object request at any point in time
  5. Parallelism : Distributed objects may be executed in parallel.
  6. Communication : There are different communication primitives available for distributed objects requests
  7. Failure : Distributed objects have far more points of failure than typical local objects.
  8. Security : Distribution makes them vulnerable to attack.

Examples Edit

The RPC facilities of the cross platform serialization protocol, Cap'n Proto amount to a distributed object protocol. Distributed object method calls can be executed (chained, in a single network request, if needs be) through interface references/capabilities.[5]

Distributed objects are implemented in Objective-C using the Cocoa API with the NSConnection class and supporting objects.

Distributed objects are used in Java RMI.

CORBA lets one build distributed mixed object systems.

DCOM is a framework for distributed objects on the Microsoft platform.

DDObjects is a framework for distributed objects using Borland Delphi.

Jt is a framework for distributed components using a messaging paradigm.

JavaSpaces is a Sun specification for a distributed, shared memory (space based)

Pyro is a framework for distributed objects using the Python programming language.

Distributed Ruby (DRb) is a framework for distributed objects using the Ruby programming language.

See also Edit

References Edit

  1. ^ Microservices and the First Law of Distributed Objects, Martin Fowler, 13 August 2014
  2. ^ Ostrowski, K., Birman, K., Dolev, D., and Ahnn, J. (2008). "Programming with Live Distributed Objects", Proceedings of the 22nd European Conference on Object-Oriented Programming, Paphos, Cyprus, July 07–11, 2008, J. Vitek, Ed., Lecture Notes in Computer Science, vol. 5142, Springer-Verlag, Berlin, Heidelberg, 463-489, http://portal.acm.org/citation.cfm?id=1428508.1428536.
  3. ^ W. Emmerich (2000) Engineering distributed objects, John Wiley & Sons Ltd.
  4. ^ Samuel C. Kendall, Jim Waldo, Ann Wollrath, and Geoff Wyant. 1994. A Note on Distributed Computing. Technical Report. Sun Microsystems, Inc., Mountain View, CA, USA.
  5. ^ "Cap'n Proto: RPC Protocol".

distributed, object, distributed, computing, distributed, objects, citation, needed, objects, sense, object, oriented, programming, that, distributed, across, different, address, spaces, either, different, processes, same, computer, even, multiple, computers, . In distributed computing distributed objects citation needed are objects in the sense of object oriented programming that are distributed across different address spaces either in different processes on the same computer or even in multiple computers connected via a network but which work together by sharing data and invoking methods This often involves location transparency where remote objects appear the same as local objects The main method of distributed object communication is with remote method invocation generally by message passing one object sends a message to another object in a remote machine or process to perform some task The results are sent back to the calling object Image describes communication between distributed objects residing in different machines Distributed objects were popular in the late 1990s and early 2000s but have since fallen out of favor 1 The term may also generally refer to one of the extensions of the basic object concept used in the context of distributed computing such as replicated objects or live distributed objects Replicated objects are groups of software components replicas that run a distributed multi party protocol to achieve a high degree of consistency between their internal states and that respond to requests in a coordinated manner Referring to the group of replicas jointly as an object reflects the fact that interacting with any of them exposes the same externally visible state and behavior Live distributed objects or simply live objects 2 generalize the replicated object concept to groups of replicas that might internally use any distributed protocol perhaps resulting in only a weak consistency between their local states Live distributed objects can also be defined as running instances of distributed multi party protocols viewed from the object oriented perspective as entities that have a distinct identity and that can encapsulate distributed state and behavior See also Internet protocol suite Contents 1 Local vs distributed objects 2 Examples 3 See also 4 ReferencesLocal vs distributed objects EditLocal and distributed objects differ in many respects 3 4 Here are some of them Life cycle Creation migration and deletion of distributed objects is different from local objects Reference Remote references to distributed objects are more complex than simple pointers to memory addresses Request Latency A distributed object request is orders of magnitude slower than local method invocation Object Activation Distributed objects may not always be available to serve an object request at any point in time Parallelism Distributed objects may be executed in parallel Communication There are different communication primitives available for distributed objects requests Failure Distributed objects have far more points of failure than typical local objects Security Distribution makes them vulnerable to attack Examples EditThe RPC facilities of the cross platform serialization protocol Cap n Proto amount to a distributed object protocol Distributed object method calls can be executed chained in a single network request if needs be through interface references capabilities 5 Distributed objects are implemented in Objective C using the Cocoa API with the NSConnection class and supporting objects Distributed objects are used in Java RMI CORBA lets one build distributed mixed object systems DCOM is a framework for distributed objects on the Microsoft platform DDObjects is a framework for distributed objects using Borland Delphi Jt is a framework for distributed components using a messaging paradigm JavaSpaces is a Sun specification for a distributed shared memory space based Pyro is a framework for distributed objects using the Python programming language Distributed Ruby DRb is a framework for distributed objects using the Ruby programming language See also EditFragmented object Distributed object communication Object request brokerReferences Edit Microservices and the First Law of Distributed Objects Martin Fowler 13 August 2014 Ostrowski K Birman K Dolev D and Ahnn J 2008 Programming with Live Distributed Objects Proceedings of the 22nd European Conference on Object Oriented Programming Paphos Cyprus July 07 11 2008 J Vitek Ed Lecture Notes in Computer Science vol 5142 Springer Verlag Berlin Heidelberg 463 489 http portal acm org citation cfm id 1428508 1428536 W Emmerich 2000 Engineering distributed objects John Wiley amp Sons Ltd Samuel C Kendall Jim Waldo Ann Wollrath and Geoff Wyant 1994 A Note on Distributed Computing Technical Report Sun Microsystems Inc Mountain View CA USA Cap n Proto RPC Protocol Retrieved from https en wikipedia org w index php title Distributed object amp oldid 1150561662, wikipedia, wiki, book, books, library,

article

, read, download, free, free download, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, picture, music, song, movie, book, game, games.