Introduction to CORBA

zhaozj2021-02-08  349

Introduction to CORBA

(This article is reproduced from Software Engineering Expert Network www.21cmm.com)

Su Yang

Corba (Common Object Request Broker Architecture, Public Object Request Agent Architecture) is a technical specification for application software architecture and object technology proposed by OMG (object management organization, Object Management Group). The core is a standard language, interface and protocol. To support interoperability between heterogeneous distribution applications and objects independent of platforms and programming languages.

After nearly ten years of development, CORBA has gradually been mature, and successfully applied in many large software systems in my country, thereby producing a lot of demand for software developers who grasp CORBA technology. Here, we have organized this lecture at the request of the readers. This series introduces the basic idea, architecture, and development of CORBA, and the design and development of CORBA applications. I hope to help the majority of software development, designers, open ideas, and deepen the understanding of CORBA, and then truly master this technology. And can develop a more powerful software system in actual work, more efficient and rapidly developing a stronger software system, and ultimately promoting the booming of my country's software career.

Corba generated background

In recent years, with the increasing maturation of Internet technology, public and commercial companies are enjoying the high-quality digital life brought by high speed and low-cost network information transmission. However, due to the continuous expansion of network size and the rapid speed of computer hardware and software technology, it has brought great challenges to the traditional application software system.

First, in enterprise applications, hardware system integrators are based on performance, price, service, etc., usually integrate hardware devices, operating systems, database platforms, etc. from different manufacturers, etc. in the same system, resulting in Isomerism has brought serious problems with interoperability, compatibility, and smooth upgrade capabilities for application software.

In addition, as the network-based business is increasing, the distributed application of traditional client / server (C / S) mode is increasingly displayed in the limitations of operational efficiency, system network security, and system upgrade capabilities.

In order to solve the interconnection of different hardware devices and software systems in the distributed computing environment (DCE, DISTRIBUTED Computing Environment), enhance interoperability between network software, solve the shortcomings in traditional distributed computing models, etc., object management organization (OMG) A common object requesting agency architecture (CORBA) is proposed to enhance the interoperability between software systems to make the construction flexible distributed application system possible.

It is based on the development and maturity of object-oriented technology, the general application of customer / server software system model and integration of existing systems, and promoting the maturation and development of CORBA technology. As the core of object-oriented system, CORBA has brought a true interconnection for today's network computing environment.

CORBA development process

1. Object Management Organization (OMG)

OMG was established in 1989, as a non-profit organization, focusing on the development of advanced technology, commercially feasible and independent of the manufacturer's software interconnection, promoting object-oriented model technology, enhancing software Portability, Reusability and Interoperability.

At the beginning of the organization, members include Unisys, Sun, Cannon, Hewlett-Packard, Philips, etc., Which have reputable hardware and software in the industry, and currently has more than 800 members.

2. The main version of CORBA

● In November 1990, OMG issued the "Object Management System Guide", preliminantly clarified the idea of ​​CORBA; ● October 1991, OMG launched version 1.0, which defines the interface definition language (IDL), object management model, and dynamic request Contents such as API and interface warehouses; ● In December 1991, OMG launched the CORBA version 1.1, and introduced the concept of object adapter on the establishment of the second-edition of the second edition; ● In August 1996, OMG Based on the previous upgrade version, completed version 2.0 development, the important content in this version is the introduction of the object request Agent Agreement (IIOP, Internet Inter-ORB Protocol) to implement interoperability in the true meaning of different manufacturers; ● In September 1998, OMG issued the CORBA version 2.3, which added asynchronous real-time transmission, service quality specification, and so on supporting CORBA objects. Currently, middleware manufacturers who announced support for Corba 2.3 specifications include the famous CORBA product manufacturer such as Inprise (Borland), Iona, Bea System. CORBA Architecture Overview

The CORBA specifications make full use of the latest achievements in the development of today's software technology, implementing integration of application software in a network-based distributed application environment, making it reusable, portable and interoperable in distribution and heterogeneous environments. Its characteristics can be summarized as the following aspects:

1. Introducing Middleware (MiddleWare) as a transaction agent, completes the service request proposed by the client (client) (introduced into the middleware concept, and shown in Figure 1);

Figure 1 Relationship between the client and the server is introduced into the middleware

2. Realize the complete separation of customer and service objects, customers do not need to understand the implementation process of the service object and the specific location (see the CORBA system architecture shown in Figure 2);

3. Provide soft bus mechanisms such that in any environment, software developed by any language can be integrated into a distributed system as long as it meets the definition of the interface specification;

4. The CORBA Specification Software System uses object-oriented software implementation methods to develop application systems, realize the full package of internal details, retention the external interface definition of the object method.

In the above features, the most prominent is the introduction of the middleware, referred to as the object request agent (ORB, Object Request Broker) and an object-oriented development mode in the CORBA system.

Object models are specific abstractions for applying developers' properties and functions of objective things. Since CORBA uses an object model, all applications in the CORBA system are viewed as a collection of objects and related operations, so through the object request Agent (ORB), the acquisition of the application objects distributed in the network in the CORBA system depends only on the network. The exact degree of smoothness and service object feature acquisition is independent of the location of the object and the device environment where the object is located.

Figure 2 CORBA system architecture

Main application direction and middleware product introduction of CORBA

The launch of the CORBA specification is re-adjusted the relationship between the client and the server. The client can propose transaction requests to the server, and can also serve as the server role for the next request.

Since the CORBA system introduces the concept of the middleware, the transaction agent completes the communication between the client and the server by the middleware, so that the server is relatively transparent to the client's location, and the original distributed computing model is canceled client, server Part of the correspondence between. The CORBA client can dynamically obtain the location of the service object at runtime, and can submit a transaction request for multiple service objects, so greatly drive the development of the distribution calculation.

Distribution calculations refer to two or more software in the network share information resources to each other. These software can be located in the same computer, or may be deployed anywhere in the network node. Software systems based on distributed model have technical advantages of balanced operation system loads and sharing network resources. In addition, the CORBA specification constraints uses the structure of the object-oriented distributed software to realize the intact package of internal details in the interface definition language, thereby reducing the complexity of the software system, increasing the reusability of software functions. CORBA provides mapping of advanced languages ​​such as C / C , Java, SmallTalk, which greatly reduces the dependence of programming language, so that software developers can share existing results over larger ranges.

It is the above characteristics to promote the development of distributed multi-layer software architecture. At present, CORBA technology has a wide range of applications in banks, telecommunications, insurance, electricity and e-commerce.

There are many CORBA middleware products that can be seen in the software market, but based on different companies' product strategies and R & D directions, each product is in service performance, great differences in high-level language support and system platforms. According to the sorted information, the author analyzed the main products (see Table 1) for the reader to be referenced at the time of choice.

Table 1 Main middleware products

转载请注明原文地址:https://www.9cbs.com/read-624.html

New Post(0)