Hybrid Partitioning Messaging Cluster for Scalable Failover
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High computational costs associated with data migration and message routing in messaging systems due to the need to preserve message ordering during failover, which negatively impacts scalability and elasticity, especially in environments where message ordering is not a requirement.
Innovation Solution
Implementing a hybrid partitioning system in messaging clusters that allows message producers to be associated with either fixed or on-demand partitions, enabling flexible assignment of partitions during load-balancing and failover, where fixed partitions preserve message order and on-demand partitions do not, allowing for efficient resource management and scalability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If fixed partitions are used to preserve message ordering during failover, then message ordering is maintained, but computational cost increases due to data migration
Solution Approach 1:
The patent segments the partitioning strategy into two distinct types: fixed partitions for applications requiring message ordering and on-demand partitions for applications without ordering requirements. This segmentation allows the system to apply different failure handling strategies to different partition types, avoiding unnecessary data migration for on-demand partitions while maintaining message ordering for fixed partitions.
Solution Approach 2:
The patent applies local quality by assigning different properties to different partitions based on the specific requirements of applications using them. Fixed partitions have the property of preserving message order through consistent broker assignment, while on-demand partitions have the property of dynamic creation and deletion without migration overhead. This localized differentiation resolves the contradiction by applying the appropriate quality characteristic only where needed.
2Reliability
If fixed partitions are migrated during broker recovery, then message ordering is preserved, but scalability is reduced
Solution Approach 1:
The patent introduces dynamics by making partition behavior adaptive based on application requirements. On-demand partitions are dynamically created when needed and deleted when no longer needed, without requiring migration during broker recovery. This dynamic approach allows the system to scale more efficiently while maintaining the ability to preserve message ordering for fixed partitions when required.
3Productivity
If on-demand partitions are used for load balancing, then scalability is improved, but message ordering cannot be guaranteed
Solution Approach 1:
The patent segments the partitioning strategy into two distinct types: fixed partitions for applications requiring message ordering and on-demand partitions for applications without ordering requirements. This segmentation allows the system to apply different failure handling strategies to different partition types, avoiding unnecessary data migration for on-demand partitions while maintaining message ordering for fixed partitions.
Solution Approach 2:
The patent applies local quality by assigning different properties to different partitions based on the specific requirements of applications using them. Fixed partitions have the property of preserving message order through consistent broker assignment, while on-demand partitions have the property of dynamic creation and deletion without migration overhead. This localized differentiation resolves the contradiction by applying the appropriate quality characteristic only where needed.
Data Source
AI summary
Described herein is a system and method for providing a messaging cluster with hybrid partitions. In accordance with an embodiment, a computer environment or messaging system includes a cluster of message brokers, which supports a hybrid of one or more fixed type partitions and/or on-demand type partitions. A message producer can be associated with a configuration that indicates a type of partition to be used for connection with that message producer. The cluster of message brokers assign to that connection a partition of the type indicated by the connection. Upon a load-balancing or failover of a message broker having active connections to message producers, those connections having an indication of fixed type partition are assigned to the same partition at a failed-over message broker, while those connections having an indication of on-demand type partition can be assigned to any on-demand partition at the failed-over message broker.


