Book Description
Middleware is the bridge that connects distributed applications across different physical locations, with different hardware platforms, network technologies, operating systems, and programming languages. This book describes middleware from two different perspectives: from the viewpoint of the systems programmer and from the viewpoint of the applications programmer. It focuses on the use of open source solutions for creating middleware and the tools for developing distributed applications. The design principles presented are universal and apply to all middleware platforms, including CORBA and Web Services. The authors have created an open-source implementation of CORBA, called MICO, which is freely available on the web. MICO is one of the most successful of all open source projects and is widely used by demanding companies and institutions, and has also been adopted by many in the Linux community.
* Provides a comprehensive look at the architecture and design of middlewarethe bridge that connects distributed software applications
* Includes a complete, commercial-quality open source middleware system written in C++
* Describes the theory of the middleware standard CORBA as well as how to implement a design using open source techniques
Table of Contents
- Cover image
- Title page
- Table of Contents
- Inside Front Cover
- Copyright
- Dedication
- ABOUT THE AUTHORS
- PREFACE
- Chapter 1: INTRODUCTION
- 1.1 INFRASTRUCTURES FOR DISTRIBUTED APPLICATIONS
- 1.2 THEMATIC ORGANIZATION
- 1.3 TARGET GROUP
- 1.4 CHAPTER OVERVIEWS
- 1.5 ANCILLARY MATERIALS
- Chapter 2: BASIC CONCEPTS
- 2.1 DISTRIBUTED SYSTEMS
- 2.2 OBJECT MODEL
- Chapter 3: INTRODUCTION TO CORBA
- 3.1 OBJECT MANAGEMENT ARCHITECTURE
- 3.2 OVERVIEW OF CORBA
- 3.3 THE CREATION PROCESS OF A CORBA APPLICATION
- 3.4 APPLICATION DEVELOPMENT IN C++
- 3.5 COMPILING AND EXECUTING THE APPLICATION
- 3.6 APPLICATION DEVELOPMENT IN JAVA
- 3.7 THE BOOTSTRAPPING PROBLEM
- 3.8 NAMING SERVICE
- 3.9 SUMMARY
- Chapter 4: μORB
- 4.1 μORB ARCHITECTURE
- 4.2 TRANSPORT LAYER
- 4.3 PRESENTATION LAYER
- 4.4 INTEROPERABILITY LAYER
- 4.5 PROXIES
- 4.6 OBJECT SERVICES
- 4.7 SUMMARY
- Chapter 5: ORB DESIGN
- 5.1 ORB FUNCTIONALITY
- 5.2 ORB ARCHITECTURES
- 5.3 DESIGN OF MICO’S ORB
- 5.4 SUMMARY, EVALUATION, AND ALTERNATIVES
- Chapter 6: INTEROPERABILITY
- 6.1 MODEL
- 6.2 INTER-ORB PROTOCOLS
- 6.3 DESIGN OF MICO’S INTEROPERABILITY
- 6.4 SUMMARY, EVALUATION, AND ALTERNATIVES
- Chapter 7: OBJECT ADAPTERS
- 7.1 TERMINOLOGY
- 7.2 FUNCTIONALITY
- 7.3 THE PORTABLE OBJECT ADAPTER
- 7.4 DESIGN OF MICO’s POA
- Chapter 8: INVOCATION ADAPTERS
- 8.1 FUNCTIONALITY
- 8.4 DESIGN OF MICO’S DII
- 8.5 DESIGN OF MICO’S SII
- 8.6 SUMMARY
- Chapter 9: IDL COMPILER
- 9.1 INVOCATION ADAPTERS
- 9.2 COMPILER FUNDAMENTALS
- 9.3 ABSTRACT SYNTAX TREE FOR IDL SPECIFICATIONS
- 9.4 MICO’S IDL COMPILER
- 9.5 SUMMARY, EVALUATION, AND ALTERNATIVES
- Chapter 10: CORBA AND BEYOND
- 10.1 CORBA COMPONENTS
- MICO INSTALLATION
- MICO IMPLEMENTATION OVERVIEW
- MICO IMPLEMENTATION DETAILS
- SAMPLE APPLICATION
- LIST OF FIGURES
- ACRONYMS
- GLOSSARY
- BIBLIOGRAPHY
- INDEX