Service Aggregation in SOA Architecture
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In service-oriented architectures, finding the right granularity for service interfaces is challenging, as overly fine-grained interfaces lead to performance issues and management difficulties, while coarse-grained interfaces require frequent adjustments, causing instability. Additionally, existing approaches often result in inefficient service implementations and lack systematic organization of service objects and interfaces.
Innovation Solution
A method and system that allow for the aggregation of service operations and objects, enabling dynamic operation modes and optimizations in persistence, transaction, and concurrency management, supported by a service manager and execution frameworks, to provide efficient and stable service interfaces.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If service interfaces are made fine-grained, then service stability is improved, but system performance deteriorates due to excessive service calls
Solution Approach 1:
The patent combines multiple fine-grained service operations into aggregated service operations that execute multiple database operations atomically. This merging reduces the number of service calls while maintaining data consistency, thereby improving system performance without sacrificing service stability.
Solution Approach 2:
The system dynamically adjusts the granularity of service interfaces based on the specific operation being performed. For operations requiring high consistency, the system uses aggregated services with appropriate granularity, while allowing fine-grained access when needed, thus optimizing both performance and stability dynamically.
2Productivity
If service interfaces are made coarse-grained, then system performance is improved by reducing service calls, but service stability deteriorates due to frequent interface adjustments
Solution Approach 1:
The patent applies different granularity levels to different service interfaces based on their specific requirements. Coarse-grained interfaces are used for performance-critical operations where data consistency can be maintained through aggregation, while fine-grained interfaces are preserved for operations requiring high stability and frequent updates, thus optimizing both performance and stability locally.
3Reliability
If multiple service interfaces of various granularities are built as independent services, then service stability is improved, but development complexity increases due to code duplication
Solution Approach 1:
The system provides a universal service interface framework that can generate multiple granularities of service interfaces from a single base service definition. This multi-functionality eliminates the need to create separate independent services for different granularities, reducing development complexity while maintaining service stability.
Solution Approach 2:
The system performs preliminary aggregation of service operations during the service definition phase, creating a hierarchy of services with different granularities in advance. This preliminary organization allows the system to present appropriate interfaces without requiring complex runtime decisions, thus reducing development and maintenance complexity.
4Device complexity
If only coarse-grained services are offered, then development simplicity is improved, but information loss occurs due to excessive data exposure
Solution Approach 1:
The patent segments service interfaces into multiple granularities, allowing the system to expose only the necessary level of detail to clients based on their needs. This segmentation prevents information loss by providing fine-grained access when required while maintaining overall system simplicity through automated interface generation.
Data Source
AI summary
Various techniques for processing service operations and for developing a service interface in a service oriented data architecture are provided. When processing a service request, a first service implementation is executed in a first operation mode. The first service implementation calls at least one second service implementation, which is executed in a second operation mode. When developing a service interface, at least one aggregated service object and at least one aggregated service operation are defined, the aggregated service operation using the aggregated service object such that the aggregation structure of the aggregated service operation matches the aggregation structure of the aggregated service object.


