New features in CORBA 3.0
150 likes | 328 Vues
New features in CORBA 3.0. Niall Stapley, CERN email: niall.stapley@cern.ch. Overview. What exactly is CORBA3? Objects passed by value CORBA Component Model Asynchronous Messaging Minimum CORBA Fault Tolerant CORBA Other new specifications. What exactly is CORBA 3.0?.
New features in CORBA 3.0
E N D
Presentation Transcript
New features in CORBA 3.0 Niall Stapley, CERN email: niall.stapley@cern.ch
Overview • What exactly is CORBA3? • Objects passed by value • CORBA Component Model • Asynchronous Messaging • Minimum CORBA • Fault Tolerant CORBA • Other new specifications
What exactly is CORBA 3.0? • Actually a suite of specifications. • Conceptual difference between 2 and 3 • CORBA 2 tried to preserve network transparency. • CORBA 3 provides features that help with the network. • Divided into 3 main areas • Java and internet integration. • Quality of Service Control. • CORBA Components.
Objects by value • A struct with added value • They can have state and behaviour • Not CORBA objects • Can inherit from other valuetypes and support interfaces • Supports the CORBA Component Model and Java to IDL reverse mapping. • New keywords: valuetype, public, private, abstract • Uses a value factory to create local object • Since CORBA 2.3
interface abstract interface valuetype abstract valuetype single multiple Objects by value
CORBA Component Model • Framework for designing, implementing and deploying CORBA components. • Purpose is to simplify and reduce effort by using a container that: • manages lifecycle • provides CORBA services • allows clean separation between application logic and CORBA • Support for ready made components
CORBA Component Model • Two levels of component • Basic - fully compatible with EJB • Extended - components expose ports • Component categories • Session, Service, Entity, Process • More extra keywords like component, home, supports • Implementations? • K2 Component Server • MicoCCM • OpenCCM
Quality of Service • Provides policy-based QoS Framework • No standard defaults – ORB Vendor sets them • Policy areas • Rebind Support • Request / Reply Priority • Request / Reply Timeout • Synchronization Scope • Routing
Asynchronous Messaging • Brings flexible asynchronous communication to Static Invocations. • Asynchronous Method Invocation (AMI) • Callback mode • Similar to providing a callback handler object • Polling mode • Returns a valuetype object for client to check • From CORBA 2.4
Minimum CORBA • Designed systems with limited resources • Do not need everything that CORBA provides • Has size and space limits • Some operations are omitted from Object, ORB • Other omissions • Dynamic Invocation Interface • Dynamic Skeleton interface • Dynamic any • Interface Repository
Minimum CORBA • The POA • Default policies only for: • create_thread_policy • create_implicit_activation_policy • create_servant_retention_policy • create_request_processing_policy • No dynamic activation of POAs • No ServantManagers • Implementations • Tatanka’s gibralter • Sankhya’s Varadi
Fault Tolerant CORBA • Aims to provide robust support for high reliability • Defines a Fault Tolerance Infrastructure • Provides reliability by • entity redundancy • object replication (passive and active) • request retry and redirection • fault detection and recovery • Multiple profiles in IOR • Example of a FT corbaloc URL • corbaloc::1.2@hostA:683,:1.2@hostB:683/myObj
Other New Specifications • Data Parallel Processing • Defines Architecture for parallel programming • Data is typically divided and redistributed • Unreliable Multicast (MIOP) • Deliver messages to many objects at once • Takes advantage of network ability • IDL operations would require oneway • Clients “join” a multicast group with a group IOR • Domain CORBAfacilities • “IDL is a great way to define standard interfaces for standard objects that every company in an industry can share.”
And Finally... • For more information: • http://www.omg.org/technology/corba/corba3releaseinfo.htm • http://www.omg.org/technology/documents/specialized_corba.htm • CORBA 3 : Fundamentals and Programming by Jon Siegel • Any questions? • Thanks ESRF for a great workshop!