1 / 14

Component Architecture (CORBA – RMI)

Component Architecture (CORBA – RMI). -Shalini Pradhan. Common Architectures. Data Flow Systems Batch Sequential & Control Loops Pipes and Filters Call and Return Systems Main Programs & Subroutines Object Oriented Systems Independent Components Communicating Processes & Event Systems

Download Presentation

Component Architecture (CORBA – RMI)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Component Architecture(CORBA – RMI) -Shalini Pradhan

  2. Common Architectures • Data Flow Systems • Batch Sequential & Control Loops • Pipes and Filters • Call and Return Systems • Main Programs & Subroutines • Object Oriented Systems • Independent Components • Communicating Processes & Event Systems • Data – Centered Systems (Repositories) • Databases & Blackboards • Virtual Machines • Rule based systems

  3. Object Oriented Architecture

  4. Component Architecture • Component • Independent unit of Software • It satisfies a set of behavior rules • Component Architecture • Specifices set of interfaces and rules of interaction [http://www-unix.mcs.anl.gov/~curfman/cca/web/cca_paper.html]

  5. Interface How do Components Interact? Components interact via clearly specified interfaces iGetMoney() iReceiveItem() Customer Supplier iReceiveInventory() iOrderInventory() iReceiveOrder() Wholesaler Retailer • Focus on individual interfaces • - precise external behavior (provided + required) • - all implementation aspects completely hidden

  6. Component Architecture Standards • CORBA • CORBA is a distributed object specification supported by the OMG (Object Management Group), a consortium of over eight hundred partners. • Java Beans • JavaBeans and Enterprise JavaBeans (EJB) are component architectures developed by Sun and its partners. • COM • is Microsoft's component standard that forms the basis for interoperability among all Window-based applications. • Java RMI (Remote Method Invocation) • The Java remote method invocation system described in this specification has been specifically designed to operate in the Java environment.

  7. CORBA http://students.cec.wustl.edu/~dm9/DCA/CORBA.htm

  8. Advantages • CORBA supports many existing languages. CORBA also supports mixing these languages within a single distributed application. • CORBA supports both distribution and Object Orientation. • CORBA is an industry standard. • CORBA provides a high degree of interoperability. This insures that distributed objects built on top of different CORBA products can communicate. • Over 600 companies back CORBA, including hardware companies, software companies, and cable companies, phone companies, banks, etc.

  9. Limitations • Not free • costs can be substantial • developer licenses (­$800+ per developer) • runtime licenses (cost varies with vendor) • standardized extensions (“Object services” inOMG speak) add more costs • Harder to use • no support for detecting software version mismatches • runtime, sometimes resulting in silent errors • Add-on to the language [http://www.ociweb.com/javasig/knowledgebase/February1998/RMI_CORBA.pdf]

  10. Application • Manage constant diversity - Heterogeneous environment • Good for accessing legacy systems • especially if Java is not supported on the legacy platform • Good for extending existing CORBA-based systems with Java • Good for leveraging expertise in other languages • as long as there is a CORBA binding for that language

  11. Java RMI • Java language's RMI system assumes the homogeneous environment of the Java Virtual Machine, and the system can therefore take advantage of the Java object model whenever possible. • Remote method invocation (RMI) is the action of invoking a method of a remote interface on a remote object. Most importantly, a method invocation on a remote object has the same syntax as a method invocation on a local object. [http://java.sun.com/products/jdk/1.1/docs/guide/rmi/spec/rmi-objmodel.doc.html#213]

  12. Java RMI • The interfaces and classes that are responsible for specifying the remote behavior of the RMI system are defined in the java.rmi and the java.rmi.server java.rmi.registry packages. RMI Registry Client VM Server VM skeleton stub OBJ

  13. Advantages • Simple to use - sending objects • implement “Serializable” interface • optionally specify codebase • automatic version mismatch detection • Integrated into platform • remote method calls are nearly identical to normal method calls • distributed garbage collection preserves automatic memory management • Can pass objects • Supports Distributed Processing

  14. Limitations • Works in only Java Environment • Not a full featured Middleware • No mechanism for object description • Server agents

More Related