Service Broker Routing for SOA Fault Tolerance
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current Service Oriented Architectures (SOAs) based on UDDI and HTTP are limited by persistent service registrations, lack of dynamic routing, and synchronous communication, which hinder fault tolerance, load balancing, and service level agreement management, and do not support asynchronous, event-driven interactions.
Innovation Solution
Adopting telecommunications concepts and protocols, such as SIP and SIMPLE, to enhance WS-I standards with transient status registrations, asynchronous peer-to-peer application data routing, and additional interaction types, enabling dynamic service level agreement management, distributed fault tolerance, and load balancing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of information
If UDDI-based SOA with persistent service registrations is used, then service discovery is enabled, but dynamic routing and real-time service status monitoring are not supported
Solution Approach 1:
The patent introduces a Service Registry that acts as an intermediary between service providers and consumers. This registry maintains both persistent service descriptions (from UDDI) and transient service status information (inspired by SIP protocols), enabling dynamic routing decisions without requiring complex peer-to-peer status monitoring between services.
Solution Approach 2:
The patent implements dynamic service status tracking by maintaining transient registrations that automatically expire. Service providers periodically refresh their status information in the registry, allowing the system to adapt to changing service availability without manual intervention or complex monitoring mechanisms.
2Reliability
If HTTP synchronous request-response protocol is used, then simple implementation is achieved, but fault tolerance and load balancing are hindered
Solution Approach 1:
The patent segments the communication protocol into distinct phases: service discovery (using WSDL/UDDI), service invocation (using SIP-inspired signaling), and data transfer (using existing data protocols). This segmentation allows each layer to be optimized independently, enabling fault tolerance and load balancing in the signaling layer while keeping implementation straightforward.
Solution Approach 2:
The Service Registry acts as a mediator that manages service invocations, enabling load balancing and fault tolerance by routing requests to appropriate service instances based on current status information, without requiring complex peer-to-peer communication logic between services.
3Productivity
If direct consumer-to-provider communication is implemented, then simple architecture is achieved, but load balancing and service level agreement management are not supported
Solution Approach 1:
The patent implements preliminary service registration and status publication in the Service Registry before actual service invocations occur. This allows the system to pre-establish routing paths and service level agreements, enabling efficient direct consumer-to-provider communication while maintaining centralized control for load balancing and monitoring.
4Adaptability or versatility
If persistent service bindings are used, then simple service discovery is achieved, but dynamic service selection and service level agreement enforcement are hindered
Solution Approach 1:
The patent implements dynamic service bindings by maintaining transient service status information that automatically updates in the Service Registry. Services can be dynamically selected and rebound based on current status without manual intervention, enabling adaptability while reducing binding establishment time through automated status refresh mechanisms.
Data Source
AI summary
A Peer-to-Peer Application Data Routing Fabric is described. The Fabric provides routing between endpoints resident in peer nodes of a Service Oriented Architecture where the routing is based on endpoint presence, availability, status, and location to satisfy the requirements of fault tolerance and load balancing among homogenous endpoints; or routing by address among instances of differing type. In the preferred embodiment of the Fabric, the Session Initiation Protocol components, interactions and transport mechanisms are leveraged and extended.


