Distributed Routing Service for CORBA Interoperability

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing CORBA systems face challenges in managing large-scale distributed applications, particularly in providing high performance and complex routing capabilities in distributed computing environments.

Innovation Solution

A routing service is introduced that enables distributed applications to locate horizontally distributed service provider applications, supporting multiple communications protocols and middleware tools, with a flexible framework that includes a main database, routing mechanism, and interface defined in IDL, allowing for distributed instances and integration with existing CORBA domains.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If CORBA systems are used to provide interoperability between applications in distributed computing environment, then interoperability between different languages and platforms is improved, but device complexity and difficulty of managing large-scale distributed applications increases

Engineering Contradiction:
ImproveinteroperabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a routing service as an intermediary component between client applications and target services in the distributed computing environment. This routing service maintains routing information in a database and provides routing decisions to direct client requests to appropriate target services, thereby simplifying the complexity of direct CORBA-based interoperability while maintaining adaptability across different platforms and languages.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Stability of the object's composition

If routing information is stored in a centralized database, then routing decision consistency is improved, but access performance and scalability deteriorates

Engineering Contradiction:
Improverouting decision consistencyVSAvoidrouting access performance
Core Design Contradiction:
Stability of the object's compositionVSProductivity

Solution Approach 1:

The patent segments the centralized routing information storage into multiple distributed database instances. Each routing service instance maintains a copy of the routing database, allowing routing decisions to be made locally without centralized coordination. This segmentation improves access performance and scalability while maintaining routing decision consistency through the standardized database schema and routing logic.

Inventive Principle:
Principle #1Segmentation

3Reliability

If multiple instances of routing service are deployed, then system availability and load-balancing capability are improved, but system complexity and coordination overhead increases

Engineering Contradiction:
Improvesystem availabilityVSAvoidsystem coordination complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent employs copying of the routing database to multiple routing service instances. Each instance maintains an identical copy of the routing information, eliminating the need for complex coordination mechanisms between instances. This copying approach enables multiple instances to operate independently, improving system availability and load-balancing capability while avoiding the complexity of distributed coordination protocols.

Inventive Principle:
Principle #26Copying

4Measurement precision

If the routing service stores detailed routing information for all target services, then routing precision and service location accuracy are improved, but database size and memory requirements increase

Engineering Contradiction:
Improveservice location accuracyVSAvoiddatabase size
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential routing information needed for service location from the complete service registry. The routing database stores key routing rules and service location mappings rather than complete service definitions, maintaining sufficient precision for routing decisions while reducing database size. Detailed service information is retrieved from target services themselves when needed.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS7707594B1System and method for providing a routing service in distributed computing environment
Publication Date: 2010.04.27 SHOPIFY INC
  • US7707594B1 patent drawing
  • US7707594B1 patent drawing
  • US7707594B1 patent drawing

AI summary

A system for providing a routing service that enables a client to locate a target service in distributed computing environment that supports multiple communications protocols. The system includes a main database and a routing mechanism. The main database has routing information. The routing mechanism can be distributed in multiple instances. The routing mechanism includes a local database. The local database stores an extract of the main database. The routing mechanism uses the local database to make routing decisions. To locate the target service, the client first obtains a reference to the routing mechanism. The client then sends a request with input parameters to the routing mechanism. The routing mechanism then returns output parameters to the client. The output parameters contains a reference and/or associated properties of the target service depending on the type of the target service. The client analyzes the returned output parameters and locates the target service.