1 / 12

CORBA/RMI issues in Nile

CORBA/RMI issues in Nile. CHEP 2000. Authors: F. Handfield (University of Texas, Austin, TX USA) D. Mimnagh (University of Texas, Austin, TX USA) M. Ogg (University of Texas, Austin, TX USA) L. Zhou (University of Florida, Gainesville, FL USA) Presented by:

oliverj
Download Presentation

CORBA/RMI issues in Nile

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. CORBA/RMI issues in Nile CHEP 2000 Authors: F. Handfield (University of Texas, Austin, TX USA) D. Mimnagh (University of Texas, Austin, TX USA) M. Ogg (University of Texas, Austin, TX USA) L. Zhou (University of Florida, Gainesville, FL USA) Presented by: D. Mimnagh (University of Texas, Austin, TX USA)

  2. Overview • What is Nile? • Distributed Object Architecture • CORBA • RMI • Future work Dominic Mimnagh CHEP2000

  3. What is Nile? • Nile: Distributed computing solution for CLEO • fault-tolerant (recover from resource failure) • self-managing (sophisticated resource scheduling) • heterogeneous (will run anything anywhere) • Designed for HEP • track reconstruction • data analysis • simulation • But very generic Dominic Mimnagh CHEP2000

  4. Nile Architecture Dominic Mimnagh CHEP2000

  5. History of Nile • Initially • C++ • Electra, for the CORBA ORB • Isis for replication • Isis product was eventually abandon by its vendor • C++ was hard to use portably • Nile rewritten in Java with CORBA Dominic Mimnagh CHEP2000

  6. Distributed Object Architecture • Computation is distributed • Should we distribute the control system? • scalability • resilience • separation of function • additional failure modes • error handling • Choices available: • CORBA, RMI, DCOM Dominic Mimnagh CHEP2000

  7. Nile with CORBA • Code specified by IDL to Java bindings • write interfaces in IDL • compile IDL to Java for interfaces, proxies helper classes etc... • implement Java interfaces • Successful robust Nile implementation achieved • HERA-B MC • CLEO II MC Dominic Mimnagh CHEP2000

  8. CORBA Issues • Restrictive object model • pass data only • not Serializable • members are public • classes are final • Under specified • OMG politics? • Name Service is single point of failure • ORB supplier • bug reporting • Scaling problems Dominic Mimnagh CHEP2000

  9. Nile with RMI • No code mappings needed • write interfaces in Java • implement Java interfaces • compile implementation to proxies classes • Improved Nile prototype (see E301) • no deadlocks • no scalability problems with 60 CPUs Dominic Mimnagh CHEP2000

  10. RMI Issues • Less complex • only the essentials functions are provided • fewer lines of code • Java only (could use JNI to get to others) • rudimentary registry service • Real objects • data + code • One vendor • better integration • no alternatives • It does the job! Dominic Mimnagh CHEP2000

  11. Future Work • Complete port to RMI • robust fault-tolerance,GUIs, etc... • CLEO III data processing and analysis • scheduling • data management • comprehensive security • Enhance Nile with RMI technologies • Jini Dominic Mimnagh CHEP2000

  12. Jini • Lookup Service • Name Service • transparent replication • object database • Lease mechanism • Distributed events Dominic Mimnagh CHEP2000

More Related